C 半右倒金字塔

C 半右倒金字塔,c,C,我有一个家庭作业来制作金字塔代码,然后我尝试了一下,代码是这样的: int main() { int n,i,j,k; printf("How many lines long ?\n"); scanf("%d",&n); for(i = 0; i<=n; i++) { for(j = 0; j<n-i; j++) { printf(" "); } for(k = 0; k<i; k++) {

我有一个家庭作业来制作金字塔代码,然后我尝试了一下,代码是这样的:

int main()
{
    int n,i,j,k;
    printf("How many lines long ?\n");
    scanf("%d",&n);
for(i = 0; i<=n; i++)
{
    for(j = 0; j<n-i; j++)
    {
        printf(" ");
    }
    for(k = 0; k<i; k++)
    {
        printf("#");
    }
    printf("\n");
}
return 0;
}
    #
   ##
  ###
 ####
#####
但是,我想得出这样的结果:

#####
 ####
  ###
   ##
    #

有人能帮我吗???谢谢…

您只需反转外部for循环即可实现这一点。为(i=n;i>0;i--){}创建外部for循环

修改代码:-

int main()
{
    int n, i, j, k;
    printf("How many lines long ?\n");
    scanf("%d", &n);
    for (i = n; i > 0; i--)
    {
        for (j = 0; j < n - i; j++)
        {
            printf(" ");
        }
        for (k = 0; k < i; k++)
        {
            printf("#");
        }
        printf("\n");
    }
    return 0;
}

您可以通过使用调试器来解决这些简单问题。因此,请学习如何使用调试器。或者仅仅通过纸笔书写。还要确保代码正确缩进

向后运行外部循环?是否使用调试器?修正你的缩进。