练习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 }