金字塔

Posted 2228212230qq

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了金字塔相关的知识,希望对你有一定的参考价值。

请编写一个程序,输入首数字X和行数N,在屏幕上输出如下三角形:(呈金字塔形)
5
6 7 6
7 8 9 8 7
8 9 10 11 10 9 8
9 10 11 12 13 12 11 10 9   

(输入的首数字:5,行数为:5)
输入:行数首数字
输出:数字三角形

#include "stdio.h"
/* X:首数字,N:行数 */
void display(int X, int N)
{
   int i, j;

   for(i=0; i<N; i++)//0到N-1行 
   {
     /* 输出每一行的前导空格 */
     for(j=0; j<N-1-i; j++)
     printf("   ");

     /* 输出数字部分的前一半(0..i) */
     for(j=0; j<=i; j++)
     printf("%3d", X+i+j);

     /* 输出数字部分的后一半(0..i-1) */
     for(j=0; j<i; j++)
     printf("%3d", X+2*i-1-j);
     printf("
");
   }
}
int main()
{
   int X, N;
   printf("input first figure : ");
   scanf("%d", &X);
   printf("input rows : ");
   scanf("%d", &N);
   display(X, N);
   return 0; 
}
#include <stdio.h>
int main()
{
    int i, j, a, b, c;

    printf ("请输入行数首数字:
");
    scanf ("%d", &a);
    printf ("请输入行数:
");
    scanf ("%d", &b);

    for (i = 0; i < b; i++) //控制行数
    {
        for (j = 0; j <= b - 1 - i; j++) //控制前面的空格
        {
            printf ("   ");
        }

        for (j = 0; j <= i; j++) //控制前一半的数
        {
            c = ++a;
            printf ("%3d", c - 1); //减一就可以从首数字开始计算
        }

        for (j = 0; j < i; j++) //控制后一半的数
        {
            c = --a;
            printf ("%3d", c - 1); //

        }
        printf ("
");
    }
}

 








以上是关于金字塔的主要内容,如果未能解决你的问题,请参考以下文章

OpenCV学习笔记12-图像金字塔的原理及代码实现

计算机视觉系列教程2-5:图像金字塔送她一朵玫瑰(附代码)

图像金字塔高斯金字塔拉普拉斯金字塔是怎么回事?附利用拉普拉斯金字塔和高斯金字塔重构原图的Python-OpenCV代码

java n的金字塔

优化算法吉萨金字塔建造优化算法(GPC)含Matlab源码 1438期

PHP练习--用for循环打印空心菱形