為什么定義sum的時(shí)候要賦值sum=0,而只定義不賦值的時(shí)候計(jì)算結(jié)果是錯(cuò)的呢?大神就指教
#include <stdio.h>
int main()
{
? ? int arr[3][3] = {{1,2,3},{4,5,6},{7,8,9}};
? ? int i,j;
? ? int sum=0;
? ? for(i=0;i<3;i++)
? ? {
? ? ? ? for(j=0;j<3;j++)
? ? ? ? {
? ? ? ? ? ? printf("arr[%d][%d]=%d\n",i,j,arr[i][j]);
? ? ? ? ? ??
? ? ? ? ? ? if(i%2==0&&j%2==0)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? sum+=arr[i][j]; ? ?
? ? ? ? ? ? }
? ? ? ? }
? ? }
? ? sum+=arr[1][1];
? ? printf("對(duì)角線元素之和是:%d\n",sum);
? ? return 0; ? ?
}
2017-09-07
因?yàn)槟阍诤竺嬗昧恕皊um+=xx”,意思是sum=sum+xx,如果你在開始時(shí)不賦值,那么第二個(gè)sum是沒(méi)有值的,那么這個(gè)加法沒(méi)有意義了,而你給了sum=0,那么相當(dāng)于sum=0+xx,這時(shí)候才有效
2017-10-21
如果只定義sum,沒(méi)賦值,當(dāng)用到sum的時(shí)候,系統(tǒng)就會(huì)隨機(jī)給sum賦值一個(gè)值.