这个c语言程序运行的结果为什么会是这样?好像是指针问题

#include<stdio.h>voidmain(){int*p,i,a[10];p=a;for(i=0;i<10;i++){scanf("%d",p++);}prin... #include<stdio.h>void main(){ int *p,i,a[10]; p = a; for(i=0;i<10;i++) { scanf("%d",p++); } printf("\n"); for(i=0;i<10;i++,p++) { printf("%d",*p); }} 展开
 我来答
庄政警
2019-07-13 · TA获得超过9916个赞
知道大有可为答主
回答量:1113
采纳率:94%
帮助的人:889万
展开全部
第一个循环输入完毕后p已经指向a数组后面去了
输出时先把p重置就行了:
#include<stdio.h>
void main()
{
int *p,i,a[10];
p = a;
for(i=0;i<10;i++)
{
scanf("%d",p++);
}
printf("\n");
p = a; //p归位
for(i=0;i<10;i++,p++)
{ printf("%d",*p);
}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式