#include <stdio.h>
int main()
{
int i, j, k;
for(i=1; i<8; i++)
{
/* 观察每行的空格数量,补全循环条件 */
if(i<5)
{
for(j=i ; j<5 ; j++)
{
printf(" "); //输出空格
}
/* 观察每行*号的数量,补全循环条件 */
for( k=0 ; k<i*2-1 ; k++ )
{
printf("*"); //每行输出的*号
}
}
else
{
for(j=5 ;j-i<2 ; j++)
{
printf(" "); //输出空格
}
for( k=1 ; k<=16-i*2-1 ; k++ )
{
printf("*"); //每行输出的*号
}
}
printf("\n"); //每次循环换行
}
return 0;
}
你这个代码也差不多了。
#include <stdio.h>
int main()
{
int i, j, k;
for(i=1; i<8; i++){
if(i<5){
for(j=i ;j<=4 ;j++ )
printf(" ");
for(k=0 ;k<i*2-1 ;k++ )
printf("*");
}
else{
for(j=5 ;j-i<2 ;j++ )
printf(" ");
for(k=1 ;k<=16-i*2-1 ;k++ )
printf("*");
}
printf("\n");
}
return 0;
}
这样子可能会好看点。
我的代码虽然跟小编的代码不一样,但是结果是正确的,希望能供参考