练习5-3 数字金字塔 (15分)

本题要求实现函数输出n行数字金字塔。

函数接口定义:

void pyramid( int n );
 

其中n是用户传入的参数,为[1, 9]的正整数。要求函数按照如样例所示的格式打印出n行数字金字塔。注

意每个数字后面跟一个空格。

裁判测试程序样例:

#include <stdio.h>

void pyramid( int n );

int main()
{    
    int n;

    scanf("%d", &n);
    pyramid(n);

    return 0;
}

/* 你的代码将被嵌在这里 */
 

输入样例:

5
 

输出样例:

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


 1 void pyramid(int n){
 2     
 3     int i,j,k;
 4     for(i=1;i<=n;i++){
 5         //n行;
 6         for(j=n-i;j>=1;j--){
 7             //每行先输入n-i个空格,比如输入为5,起始空格为4,输到弟四行,循环完毕,第五行不输入空格跳出循环;
 8             printf(" ");
 9         }
10         for(k=1;k<=i;k++){
11             //输入行数,每个数后面跟一个空格;
12             printf("%d ",i);
13         }
14         //每行输入完毕,另起一行;
15         printf("\n");
16     } 
17 }

 

posted @ 2020-06-22 18:56  行行行行行行行  阅读(1128)  评论(0编辑  收藏  举报