原题
for (i=1;i<=10;i++) {
scanf("%d",&a[i]);
if (a[i]<0) {
sum+=a[i];
}
}
printf("%d",sum);
return 0;
}
输出结果
因为数组的索引是从0开始的,所以小于等于10就会为11超出10了,需要改为小于10
for循环中,i初始化,应该是0,这样你才能访问到数组的第一个元素
看了上面的记录,看得出来你很执着,是个程序猿好苗子。。。。哈哈。。。
根本原因是,scanf 并没有修改 a[10],所以,真正的a[10] 并不是你输入的10,你可以debug 看下
for循环中i应该从0开始
for(i=0;i<10;i++),否则数组会越界的!