以下程序的功能是输入任意整数给n后,输出n行由大写字母A开始构成的三角形字符阵列图形。例如,输入整数5时(注意:n不得大于10),程序运行结果如下: ABCDE FGHI JKL MN O 请填空完成该程序。 main() { int i,j,n; char ch=’A’;scanf("%d",&n);if(n<11){ for(i=1;i<=n;i++) { for(j=1;j<=n-i+1;j++) { printf("%2c",ch); 【17】 ; } 【18】 ; }}else printf("n is too large!\n")printf("\n"0); }
参考答案:[17] ch++; 或++ch; 或 ch=ch+1; 或 ch=1+ch; 或 ch+=1; [18] priintf("\n"); 或 putchar(’\n’);
解析: 因为ch被初始化为’A’,而内循环中有—条输出ch的语句,整个程序都没有一条改变ch值的语句。所以,第1空应该填ch++或其它类似的表达式,以使每次输出一个字母后ch都能变为下一个字母。内循环结束后,代表这一行已经输出完毕,此时即将开始下一行的输出,所以在第2空位置应该输出一个换行符,故应填入printf("\n");或其他等价形式。