7-135 数字金字塔 (10 分)
输入正整数n,输出n层数字金字塔。
输入格式:
正整数n,1<=n<=9。
输出格式:
n层的金字塔,其中第1层的“1”在第1行的第39列(列从1开始计数)。
输入样例:
5
输出样例:
参考
/*
* @Author: Ray123
* @Description: 输入正整数n,输出n层数字金字塔。
* 输入:5
* 输出:烦死了打不出来,自己运行看看看吧
* @Date: 2021-05-05 12:58:35
* @LastEditTime: 2021-05-05 13:32:12
* @FilePath: \undefinede:\MyApp\Microsoft VS Code\MyAdorableCode\PTA_c\135_Pyramid.c
*/
#include <math.h>
#include <stdio.h>
#include <string.h>
void pyramid(int para)//函数功能:打印第para层金字塔
{
const int TN=39;
int one=1;
int i;
for(i=1;i<=TN+1-para;i++)//此循环先找到每行的1
{
if(i==TN+1-para)
{
printf("%d",one);
for(i=TN+2-para;i<=TN;i++)//首字符1--->第39列中心位置
{
one += 1;
printf("%d",one);//one既可代表数值,也可以反映数字个数
}
for(i=TN+3-para;i<=TN-1+one;i++)//第40列--->本行末尾
{
one -= 1;
printf("%d",one);
}
}else
{
printf(" ");
}
}
printf("\n");
}
int main()
{
int input;
scanf("%d",&input);
int count=1;
for(count=1;count<=input;count++)
{
pyramid(count);
}
return 0;
}
版权声明:本文为whoopsdaisies原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。