带空格直角三角形*的输出

为什么打出来的是这样的直角三角形,前面空格不是依次减少的

img

img

想打出这样的的,求帮助修改原代码

img

将打印空格那里把数量打印随着i递减即可,修改如下:


#include <stdio.h>

int main(void){
    
    int i,j,k;
    for(i=1;i<=5;i++){
        
        for(k=5;k>=i;k--){
            printf(" ");
        }
        
        for(k=1;k>=1;k--){
            printf(" ");
        }
        
        for(j=1;j<=i;j++){
            printf("*");
        }
        
        printf("\n");
    }
    
    return 0;
} 

img

在你的基础上改就是 for(k=4;k>=1;k--) 不能每次打印四个空格,要递减 for(k=4;k>=i;k--) 第一次打印四个,第二次3,三次2四次1五次 0

img

#include<stdio.h>
 
int main()
 
{
int i,j,k;
for(i=1;i<=5;i++){
for(k=4;k>=i;k--)
{

printf(" ");}
for(j=1;j<=i;j++){
printf("*");
}
printf( "\n");
}

    return 0;
 
}