C++ 如何使用嵌套for循环生成倒计时?

C++ 如何使用嵌套for循环生成倒计时?,c++,for-loop,nested,countdown,C++,For Loop,Nested,Countdown,我希望用户输入一个整数,然后我希望我的程序能够使用嵌套的Forloop语句从该数字开始倒计时到零。例如: 用户输入20 20 19 18 17 16 15 14 13 12 11 109876 5 4 3 2 1 0 我还希望数字以半金字塔结构打印出来,类似于上面所示的示例。下面是我解决这个问题的尝试。注意,我使用了一个变量并将其设置为20,只是为了测试程序。如果您也能解释我的错误,并解释如何制作不同的图案,如全金字塔或倒金字塔,我们将不胜感激。 #include <stdio.h>

我希望用户输入一个整数,然后我希望我的程序能够使用嵌套的
For
loop语句从该数字开始倒计时到零。例如:
用户输入20
20
19 18
17 16 15
14 13 12 11
109876
5 4 3 2 1 0
我还希望数字以半金字塔结构打印出来,类似于上面所示的示例。下面是我解决这个问题的尝试。注意,我使用了一个变量并将其设置为20,只是为了测试程序。如果您也能解释我的错误,并解释如何制作不同的图案,如全金字塔或倒金字塔,我们将不胜感激。

#include <stdio.h>
int main()
{
    int sum, i, j, number=20;

    for (i=1;i<=20;++i)
    {
        sum = number-1 ;
        for (j=1;j<=i;j++)
        {
            printf("%d ",sum);
            --number;
        }

        printf("\n");
    }
    return 0; 
}
#包括
int main()
{
整数和,i,j,数=20;

对于(i=1;i这是针对半金字塔的,如您的示例所示

#include <iostream>

int main()
{
    int sum = 20;
    for(int i = 1; sum != -1;i++) {
        for(int j = 1; j <= i; j++) {
            std::cout << sum-- <<' ';
            if (sum == -1)  break;
        }
        std::cout << std::endl;
    }
}
#包括
int main()
{
整数和=20;
for(int i=1;sum!=-1;i++){
对于(int j=1;j
#包括
int main()
{
整数和,i,j,数=20;

对于(i=1;i)你为什么要做sum=number-1而不是number-i,然后忘记--number?
#include <stdio.h>
int main()
{
    int sum, i, j, number=20;

    for (i=1;i<=20;++i)
    {
       **sum = number** ;

    for (j=1;j<=i;j++)
    {
        printf("%d ",sum);
        --number;
    }

    printf("\n");
}
return 0;