C语言初学者很简单的问题

来源:百度知道 编辑:UC知道 时间:2024/06/16 18:16:27
#include<stdio.h>
main()
{int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;
printf("%d\n",*(p+2));
}输出和为什么

以下程序段给数组所有元素输入数据
#include<stdio.h>
main()
{int a[10],i=0;
while(i<10)scanf("%d",????);
...
}
???处填入的是什么和为什么

第一个的结果应该为 3
因为*(p+2)等价于输出a[2]..再说详细一点..指针p向后移2..不是两个字节而是4个字节从指向a[0]移到了a[2]..
第二个&a[i]..后面省略的应该有i++类的递增的吧
你是刚学的..这个不难啊..
呵呵以后c问题就问我吧..如果有发邮件i007wxl@126.com
乐意效劳..

NO.1 输出3

NO.2 a[i] 给数组赋值