C++编程中,输入int id[N]后,在后面的函数中,输入了一个id[i],再调用函数显示出来(运行中)比如我输入函数中,先输入了,id[i]的值为01,可是我再调用另一个函数,显示这个数字了成了4218944。 struct student student[N];...int id[N];...scanf("%d",&student[i].id);(输入函数中)...printf("%d",student[i].id);(显示函数中)怎么改呢?
2 回答
收到一只叮咚
TA贡献1821条经验 获得超4个赞
数字变成了4218944的原因应该是你没访问到你输入的那个值,而是访问到其它未初始化的值了。
你的描述有点混乱,没理解到这跟id[i]有什么关系。
如果你是scanf("%d",&student[i].id);后printf("%d",student[i].id);且i值相同,那么输出应该就是相同的。
慕哥9229398
TA贡献1877条经验 获得超6个赞
#include <stdio.h>
#include <stdlib.h>
void input(int n ,double *p)
{
int i;
for(i=0;i<n;i++)
scanf("%lf",(p+i));
return ;
}
int main()
{
int n,i;
double a[1000];
scanf("%d",&n);
input(n,a);
for(i=0;i<n;i++)
printf("%f\n",a[i]);
return 0;
}
- 2 回答
- 0 关注
- 291 浏览
添加回答
举报
0/150
提交
取消