本题要求实现函数输出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到这个数字的金字塔,一个for循环控制行数(也就是1-2-3-4-5)第二个for循环控制输出1-2-3-4-5的个数,但是金字塔有个要求就是塔形,我想啦半天也不知道怎么做
于是我查看啦一些大佬,原来是一个for循环里套啦两个for循环,另一个就是来控制 “ ” 。
void pyramid( int n ){
for(int i=1;i<=n;i++){
for(int k=0;k<n-i;k++){
printf(" ");
}
for(int j=1;j<=i;j++){
printf("%d ",i);
}
printf("\n");
}
}