慕码人5007861
2015-08-03 19:56
include <stdio.h> int main() { int i, j, k; for(i=1; i<5; i++) { /* 观察每行的空格数量,补全循环条件 */ for(j=i;j<5;j++) { printf(" "); //输出空格 } /* 观察每行*号的数量,补全循环条件 */ for(k=0;k<2*i-1;k++) { printf("*"); //每行输出的*号 } printf("\n"); //每次循环换行 } return 0; }
*
***
*****
*******
Q1:“*”为啥会自动居中
Q2:代码输出的空格数是4,3,2,1,0.但是图形上看是6,4,2,0,这个是怎么算的空格数
Q3:这两个子循环是先进行空格输出,再星号输出,还是怎么的,有没有大神能给画个框图.....
居中是因为每行你自己设置了空格,每行星号到左侧边框的空格数为:4,3,2,1,0。第一个for循环控制行数,第二个for循环控制每行的空格输出,第三个for循环控制每行的星号输出。因为后两个for循环包含在第一个for循环内。
从程序看吧,不用揪细节的,因为显示的图形会根据软件版本不同而不同的
4,3,2,1。
C语言入门
926026 学习 · 20793 问题
相似问题