问题 单项选择题

有以下程序: #include <stdio.h> main( ) { int num[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13;14,15,16}},i,j; for(i =0;i<4;i ++ ) { for(j=0;j<=i;j++)printf("%4c",");for(j=______;j<4;j ++ )printf( "%4d" ,hum[i] [j] );printf(" \n" ); }} 若要按以下形式输出数组右上半三角; 1 2 3 46 7 8 11 1216则在程序下划线处应填入的是( )。

A.i-1

B.i

C.i+1

D.4-i

答案

参考答案:B

解析: 本程序为二重循环,外循环控制输出数据的行数,内循环控制输出数据的列数。本题需要输出4行4列,外层循环语句for(i=0;i<4;i++)控制输出4行,内层的第一条for循环控制每行输出的空格数,第二条for循环用于控制每行的数字输出,由于每一行的数字个数比前一行少1个,所以内层的第二条for循环每次循环的次数需要递减1,那么j的初始值应该递增,因为第一行输出的是4个数,所以空格中应填i。

补全对话,情景问答
单项选择题