【C】求一维数组内元素的总和时出现奇怪的结果?
直接上代码:
#include <stdio.h>
int sum_num(int arr[],int length){
int i,sum;
for(i = 0;i < length;i++){
sum += arr[i];
printf("sum为%d\n",sum);
}
return sum;
}
int main(){
int arr[]={80,70,66,35,95,78,58,67,87,90};
int len=sizeof(arr)/sizeof(arr[0]);
printf("总分是%d\n",sum_num(arr,len));
return 0;
}
为什么输出的结果是这样的:
请问为什么是输出这个结果?用的编辑器是dev-C++!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
你初始化了?
sum是栈上的未初始化变量,它的值是随机的,有可能是0也有可能不是0。初始化为0就行了