单选题 下面程序的功能是输出以下形式的金字塔图案:
main()
{ int i, j; *
for(i=1; i<=4; i++) ***
{ for(j=1; j<=4-i; j++)printf("");
*****
for(j=1; j<=______; j++)printf("*");
*******
printf("/n");
}
}
在横线处应填入的是______。
【正确答案】 B
【答案解析】[解析] 通过观察可知图形共4行,主函数中通过一个for循环四次,输出4行。第一行输出3个空格和1个“*”,第2行输出2个空格和3个“*”,第3行输出3个空格和5个“*”,第四行输出7个“*”,主函数中通过第二个循环控制每行的输出空格数,第三个for循环控制输出的“*”的个数,总结规律:每行输出的“*”的个数,总比前一行的多2个,且第一行的个数为1,可以断定每行输出的“*”的个数组成了一个公差为2的等差数列,所以每行输出“*”的个数即该等差数列的通项,故该空格处应该填写2*i-1。