习题5-8 空心的数字金字塔
分数 15
全屏浏览题目
切换布局
作者 颜晖
单位 浙大城市学院
本题要求实现一个函数,输出n行空心的数字金字塔。
函数接口定义:
void hollowPyramid( int n );
其中n
是用户传入的参数,为[1, 9]的正整数。要求函数按照如样例所示的格式打印出n
行空心的数字金字塔,请注意,最后一行的第一个数字前没有空格。
#include <stdio.h>
void hollowPyramid ( int n );
int main()
{
int n;
scanf("%d", &n);
hollowPyramid ( n );
return 0;
}
/* 你的代码将被嵌在这里 */
/*首先找到规律:就是第n行前的空格为总行数减去n,先打印出最前面的空格,然后是数字,第几行则打印几个第几这个数字,然后数字里面的空格为*/
void hollowPyramid ( int n ){
int j,i;
for(i=1;i<=n;i++){
for(j=1;j<=n-i;j++){
printf(" ");
}
for(j=1;j<=2*i-1;j++){
if(j==1||j==2*i-1||i==n)printf("%d",i);//一致的就放在一起,第n行放在这里
else printf(" ");
}
printf("\n");
}
}