首页 > 编程知识 正文

如何编写程序输出数字金字塔

时间:2023-11-20 14:55:11 阅读:293914 作者:IGSO

数字金字塔是初学者练习循环语句的经典题目之一,下面从多个方面讲解如何编写程序输出数字金字塔。

一、循环语句的基本使用

循环语句是编写数字金字塔的基础,以下为C语言的for循环语句示例:

#include<stdio.h>
int main()
{
    int i, j, n = 5;
    for(i = 1; i <= n; i++)//外层循环控制行数
    {
        for(j = 1; j <= i; j++)//内层循环控制列数
        {
            printf("%d ", j);
        }
        printf("n");
    }
    return 0;
}

以上程序可以输出如下图所示的数字金字塔:

1 
1 2 
1 2 3 
1 2 3 4 
1 2 3 4 5 

二、多种数字金字塔的输出方式

1、空格对齐的数字金字塔

对于以下的程序,可以输出数字金字塔并保证输出的数字对齐:

#include<stdio.h>
int main()
{
    int i, j, n = 5;
    for(i = 1; i <= n; i++)
    {
        for(j = 1; j <= n-i; j++)
        {
            printf(" ");
        }
        for(j = 1; j <= 2*i-1; j++)
        {
            printf("%d", j);
        }
        printf("n");
    }
    return 0;
}

以上程序可以输出如下图所示的数字金字塔:

    1    
   123   
  12345  
 1234567 
123456789

2、带空格的数字金字塔

以下程序可以输出带空格的数字金字塔:

#include<stdio.h>
int main()
{
    int i, j, n = 5;
    for(i = 1; i <= n; i++)
    {
        for(j = 1; j <= n-i; j++)
        {
            printf(" ");
        }
        for(j = 1; j <= i; j++)
        {
            printf("%d ", j);
        }
        printf("n");
    }
    return 0;
}

以上程序可以输出如下图所示的数字金字塔:

    1
   1 2
  1 2 3
 1 2 3 4
1 2 3 4 5

三、数字金字塔的扩展应用

数字金字塔可以扩展为其他形式,以下是几个扩展应用的示例:

1、字母金字塔

以下程序可以输出字母金字塔:

#include<stdio.h>
int main()
{
    int i, j, n = 5;
    for(i = 1; i <= n; i++)
    {
        for(j = 1; j <= n-i; j++)
        {
            printf(" ");
        }
        for(j = 1; j <= i; j++)
        {
            printf("%c ", 64+j);
        }
        printf("n");
    }
    return 0;
}

以上程序可以输出如下图所示的字母金字塔:

    A
   A B
  A B C
 A B C D
A B C D E

2、斐波那契数列金字塔

以下程序可以输出斐波那契数列金字塔:

#include<stdio.h>
int main()
{
    int i, j, n = 5, a = 0, b = 1, c;
    for(i = 1; i <= n; i++)
    {
        for(j = 1; j <= n-i; j++)
        {
            printf(" ");
        }
        for(j = 1; j <= i; j++)
        {
            printf("%d ", a);
            c = a + b;
            a = b;
            b = c;
        }
        printf("n");
    }
    return 0;
}

以上程序可以输出如下图所示的斐波那契数列金字塔:

    0
   1 1
  2 3 5
 8 13 21 34
55 89 144 233 377

总结

通过以上的代码示例,我们可以看到数字金字塔的不同形式以及不同的应用、扩展。如何编写程序输出数字金字塔需要我们对循环语句的掌握,以及对数字金字塔不同形式的理解和变换。希望本文对初学者有所帮助。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。