分析一下:
1、这条语句:
scanf("%d\n",&i);
是把输入值的赋给变量i,你输入了1 2 3 4 5 6 7 8 9 0,就把第一数1,赋值给了i
2、这时i=1。
3、这条语句
for (i=0;i<j;i++);是把0赋值给i,这时i=0,由于j没有赋初值,程序会使用内存中原有的数据,大概率为0,所以这个循环没有执行,这时,i=0,j=0.
4、循环后面是;也就是空语句,所以循环结束。
5、接下来执行以下语句:
{
scanf("%d",&a[i]);
sum=sum+a[i];
}
由于i=0,所以a【i】=a【0】,这时a【0】被赋值为2,因为输入的第二个数是2.
6、sum=0+2=2.
7、打印结果为2.
[此贴子已经被作者于2020-4-16 19:58编辑过]