我的代码和标答是一样的啊,怎么会这样?
求大佬指点!
错在j那里,如果判断条件是j < 5,那么每次输出的空格都是4,所以成了直角。
仔细观察第一行空了3格,第二行空了2格,第三行1格,第四行没空。当i等于1时,4-1为3;当i=2时,4-2为2…
所以j应该小于等于4-i
j=i,不是=1
#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;
}
奥,好像 j<5 改成 j<6-i 就行了 标答好像是错的