无花果3925518
2016-09-10 13:30
#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; }
有一个疑问 i<5,j<5都不包含5 ,k<2*i-1 代入时第一行为例输出应该小于1为什么却是为1?
你自己也说了,k<2*i-1应该是k<1
k的起始值是0的啊,满足k<1所以可以执行一次循环体,于是输出一个*,接着k++为1不满足k<1于是跳出
上面说的非常对
C语言入门
926207 学习 · 20797 问题
相似问题
回答 2
回答 4
回答 1
回答 1
回答 3