万能百科  > 所属分类  > 

若有以下程序#include <stdio.h>main(){ int i; int a[]={1,3,5,7,9} int *p=a; for(i

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

正确答案:

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

词条内容仅供参考,如果您需要解决具体问题
(尤其在法律、医学等领域),建议您咨询相关领域专业人士。

标签