c语言的数组问题

xuqinqing00 2008-03-31 08:46:41
一个数组,包含5个元素,我想对他们求和,用for循环实现,程序可以运行,
但是运行结果不对,是“sum=23287”,请问为什么啊?



#include<stdio.h>
main()
{
int a[5];
int i;
int sum=0;
printf("input 5 numbers:\n");
for(i=0;i<5;i++)
scanf("%d",a[i]);
for(i=0;i<5;i++)
sum=sum+a[i];
printf("sum=%d\n",sum);
}
...全文
43 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuqinqing00 2008-03-31
  • 打赏
  • 举报
回复
晕,我居然忘了。。。。。丢人丢大了,呵呵,看来对输入输出的格式没有好好掌握,浪费了大家的时间,不好意思呀!嘿嘿,但是编译的时候为什么不出错呢?
ttkk_2007 2008-03-31
  • 打赏
  • 举报
回复

int main()
{
int a[5];
int i;
int sum=0;
printf("input 5 numbers:\n");
for(i=0;i <5;i++)
scanf("%d",&a[i]); //注意是&a[i],not a[i]
for(i=0;i <5;i++)
sum=sum+a[i];
printf("sum=%d\n",sum);
system("pause");
}
xuqinqing00 2008-03-31
  • 打赏
  • 举报
回复
我输的是1 2 3 2 1
刚才我试过了,加了空格,结果还是23287,我是用win-tc测试的,是不是和这个有关啊?
fallinleave 2008-03-31
  • 打赏
  • 举报
回复
输入的时候不能有空格
像这样:12345
呵呵
建议scanf("%d",a[i]);=〉scanf(" %d",a[i]);
这样可以输入12 34 56 78 90
sunjw8888 2008-03-31
  • 打赏
  • 举报
回复
你输的哪五个数?

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧