偶学编程,也许本身就是一个错。。。
/* 晕,忘说了,运行环境 Dev—C++4.9.9.2,英文原版,官网下的。*/
#include<stdio.h>
int count,total1,total2,total;
int array1[]={1,1,1,1,1},array2[]={3,3,3,3,3,7};/* 他的运行结果为何是30,多了3的一倍 ;把count<7,(3,3,3,3,3,7,8)结果为41,多了3的两倍;把count 给成8,(3,3,3,3,3,7,8,9)这又是正确的了*/
int main(void)
{
for(count=0;count<6;count++)
{
total1+=array1[count];
total2+=array2[count];
}
printf("%d",total1+total2);
system("PAUSE");
return 0;
}
数组越界,C语言是不会提醒的,仍能执行,不过会产生垃圾数据。
你的计算结果是拉圾数据造成的。array1[]元素与for()不匹配。