课程
/后端开发
/C
/C语言入门
为什么我写了k<=2*i-1,然后他说我的是错的,感觉k<2*i-1才是错的
2017-10-04
源自:C语言入门 4-12
正在回答
终于搞懂了
k=0时,k<2*i-1;k=1时,k<=2*i-1
看你的k初始化为多少
int i, j, k; for(i=1; i<5; i++) { for(j=1;j<=4-i;j++) { printf(" "); } for(k=1;k<=2*i-1;k++ ) { printf("*"); } printf("\n"); } return 0; }
int i, j, k; for(i=1; i<5; i++) { for(j=1;j<=4-i;j++) { printf(" "); } for(k=0;k<2*i-1;k++ ) { printf("*"); } printf("\n"); } return 0; }
很好理解的嘛,因为它的星号是1,3,5,7……对应第1,2,3,4……行,所以就是2*i-1;然后例如,当你初始化k为0时,在打印第一行时,你的星号就只能输出一次,所以k<1;第2,3,4……也是这样的道理,当你初始化k=1时,就可以k<=2*i-1了~嘻嘻
举报
C语言入门视频教程,带你进入编程世界的必修课-C语言
2 回答为什么是k<2*i-1而不是k=2*i-1
3 回答for( k=0 ; k<2*i-1 ; k++ )中为什么不可以k=1;k<=2*i-1;
5 回答for( k=0 ; k<2*i-1 ; k++ )
3 回答为什么k=1;k<=2*i-1;k++不可以
2 回答关于k<2*i-1