问题 填空题

若有以下程序
main ( )
int a[4] [4]=1,2;-3,-4,0,-12,-13,14 , 21,23,0,-24,-31,32,-33;0;
int i,j,s=0;
for(i=0;i<4;i++)
for(j=0;j<4;j++)
if(a[i][j]<0) continue;
if(a[i][j]==0) break;
s+=a[i][j];

printf("%d\n",s);

执行后输出结果是______。

答案

参考答案:58

解析: 本题中处理二维数组元素用了两重循环,外循环变量i表示数组的行,内层循环变量j表示数组的列。在第二重循环中首先判断数组元素的值是否小于0,若是则处理该行的下一个元素:若不是则判断a[i][j],田的值是否等于0,若等于0则退出内层循环开始处理下一行;其他情况下,把a[i][j]的值加到变量s中。所以本程序段的功能是把每行值为0的元素前面的所有大于。的元素值加到变量s中。

多项选择题
单项选择题