s的值是怎么计算的啊
不是很明白计算的过程
#include <stdio.h>
#include <string.h>
int main()
{int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;
for(i=0;i<3;i++)
for(j=0;j<i;j++)
s+=a[i][j];
printf("%d\n",s);
return 0;
}
s的值是怎么计算的啊
不是很明白计算的过程
#include <stdio.h>
#include <string.h>
int main()
{int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;
for(i=0;i<3;i++)
for(j=0;j<i;j++)
s+=a[i][j];
printf("%d\n",s);
return 0;
}
要想知道s最终是什么,你先要知道a里装的是什么,因为s是在累加a的值
a是3x3的,但是初始化的时候每行只传了2个值,那么第3个值会是个随机数,我们就当它是X吧
所以a里放的是
1 2 X
3 4 X
5 6 X
那么再看循环,i从0到3,是把每一行都遍历一遍的,而j<i,
第0行不可能j<0,没有符合的,第1行j可以取0,所以取a[1][0],第2行可以取到a[2][0]和a[2][1]
所以是3+5+6