若有以下程序 #include <stdio.h> int a[ ]={2,4,6,8}; main( ) { int i; int *p=a; for(i=0;i<4

题目
若有以下程序 include int a[ ]={2,4,6,8}; main( ) { int i; int *p=a; for(i=0;i<4

若有以下程序

#include <stdio.h>

int a[ ]={2,4,6,8};

main( )

{ int i;

int *p=a;

for(i=0;i<4;i++) a[i]=*p;

printf("%d\n",a[2]);}

上面程序的输出结果是

A.6

B.8

C.4

D.2

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

8、以下程序的输出结果是: #include<stdio.h> int a[]={2,4,6,8}; int main() { int i; int *p=a; for(i=0;i<4;i++) a[i]=*p++; printf("%d\n",a[2]); return 0; }

A.6

B.8

C.4

D.2


D 解析:strcpy()函数的作用是把第二个参数代表的字符串,复制到第一个参数指向数组中。首先定义了两个字符数组b1和b2,并用一个字符串给b1赋初值,然后定义了一个字符型指针变量pb,通过赋初值使它指向b1[3]。接着执行while循环,该循环执行了3次:第一次判断条件“--pb>=b1”,使pb的值为“b1+2”,执行“strcpy(b2,pb);”后,b2中的内容为“cdefg”;第二次判断条件“--pb>=b”,使pb的值为“b1+1”,执行“strcpy(b2,pb);”后b2的内容为“bcdefg”第三次判断条件“--pb>:b1”使pb的值为“b1”,执行“strcpy(b2,pb);”后b2的内容为“abcdefg”。最后输出b2数组中存放的字符串长度,显然是7。(这里还有一个关键点:就是每当执行一次while循环判断条件,就执行一次“--pb”,使得指针pb自减1,即前移一位)。

第2题:

请读程序:includeint a[]={2,4,6,8,};main(){int i; int *p=a; for( i=0;i<4;i++)a[i]

请读程序: #include <stdio.h> int a[]={2,4,6,8,}; main() { int i; int *p=a; for( i=0;i<4;i++) a[i]=*p++; priatf("%d\n",a[2]); } 上面程序的输出结果是( )。

A.6

B.8

C.4

D.2


正确答案:A
解析:本题考查通过指针引用数组元素。程序通过a[i]=*p++;语句,循环地将2赋给a[0],4赋给a[1],6赋给a[2],8赋给a[3],所以输出结果为6。

第3题:

请读程序: includeint a[]={2,4,6,8};main (){ int i;int * p=a;for(i=0;i<4;i + +)a[

请读程序: # include<stdio.h> int a[]={2,4,6,8}; main ( ) { int i; int * p=a; for(i=0;i<4;i + +)a[i]=* p + +; printf("%d\n”,a[2]); } 上面程序的输出结果是 ( )

A.6

B.8

C.4

D.2


正确答案:A

第4题:

若有以下程序includeint a[]={2,4,6,8};main(){int i; int *p=a; for(i=0;i<4;i++)a[i

若有以下程序 #include <stdio.h> int a[]={2,4,6,8}; main() { int i; int *p=a; for(i=0;i<4;i++)a[i]=*p; printf("%d\n",a[2]);} 上面程序输出结果是

A.6

B.8

C.4

D.2


正确答案:D
解析:在C语言中,数组元素下标是从0开始的;指针变量p指向数组的首地址。for循环语句中,指针变量p始终指向数组的首地址,因而执行循环赋值语句后数组各元素的值均变为2。

第5题:

若有以下程序#include <stdio.h>int a[]={2,4,6,8};main(){ int i; int *p=a; for(i=0;i<4;i++)a[i]=*p; printf("%d\n",a[2]);} 上面程序的输出结果是A.6 B.8C.4 D.2


正确答案:D
本题中,程序开始定义了一个全局数组a,并对这个数组进行赋初值。在主函数中,定义一个整型变量i和一个整型指针变量p,并使指针变量p指向全局数组a的首地址。然后执行for循环,循环变量i的初值为0,循环结束条件为变量i的值大于等于4,循环变量i的值每循环一次自加1,通过这些分析我们知道,循环执行了4次结束。
第一次循环时,由于*p表示数组的第一个元素值2,那么执行a[i]=*p;语句,即将数组的第一个元素变为2;第二次循环时,由于i为1,即将数组的第二个元素变为2,同理,第三次与第四次循环分别将数组的第三和第四个元素值变为2。
循环结束,程序执行输出语句,这时数组中所有元素的值都为2。因此,程序最后的输出结果是2。

第6题:

若有以下程序includeint a[]={2,4,6,8};main(){int i;int *p=a;for(i=0;i<4;i++)a[i]=

若有以下程序 #include<stdio.h> int a[]={2,4,6,8}; main() { int i; int *p=a; for(i=0;i<4;i++)a[i]=*p; printf("%d\n",a[2]);} 上面程序的输出结果是

A.6

B.8

C.4

D.2


正确答案:D
解析: 在C语言中,数组元素下标是从0开始的;指针变量p指向数组的首地址。for循环语句中,指针变量p始终指向数组的首地址,因而执行循环赋值语句后数组各元素的值均变为2。

第7题:

若有以下程序:includeint a[]={2,4,6,8};main(){int i; int *p=a; for(i=0;i<4;i++)a[

若有以下程序: #include<stdio.h> int a[]={2,4,6,8}; main() { int i; int *p=a; for(i=0;i<4;i++) a[i]=*p; printf("%d\n",a[2]); } 上面程序的输出结果是( )。

A.6

B.8

C.4

D.2


正确答案:D
解析:在C语言中,数组元素的下标是从0开始的。for循环语句中,指针变量p始终指向数组a的首地址,因而执行循环赋值语句后数组各元素的值均变为2。

第8题:

下面程序的输出结果是() include main( ) { int i,a[ ]={2,4,6,8}; int * p=a;

下面程序的输出结果是 ( ) # include<stdio.h> main( ) { int i,a[ ]={2,4,6,8}; int * p=a; for(i=0;i<4;i+ +)a[i]=* p+ +; printf(*%d\n",a[2]); }

A.6

B.8

C.4

D.2


正确答案:A

第9题:

若有以下程序

#include <stdio.h>

int a[]={2,4,6,8};

main()

{ int i;

int *p=a;

for(i=0;i<4;i++)a[i]=*p;

printf("%d\n",a[2]);}

上面程序的输出结果是

A.6

B.8

C.4

D.2


正确答案:D
解析:在C语言中,数组元素下标是从0开始的;指针变量p指向数组的首地址。for循环语句中,指针变量p始终指向数组的首地址,因而执行循环赋值语句后数组各元素的值均变为2。