C语言实验——打印金字塔
题目描述
输入n值,打印下列形状的金字塔,其中n代表金字塔的层数。
输入
输入只有一个正整数n。
输出
打印金字塔图形,其中每个数字之间有一个空格。
示例输入
3
示例输出
1 1 2 1 1 2 3 2 1
源码(程序不太简洁。。凑合吧):
#include <stdio.h> int main() { int n,i,j; int t; scanf("%d",&n); t=2*n-1; for(i=1; i<=n; i++)//一次循环代表输出一行 { for(j=1; j<=t-2*i; j++) putchar(' '); for(j=1; j<=i; j++) { if(i == n && j==1)//当输出最后一行的第一个字母的时候。。因为它前面没有空格 printf("%d",j); else printf(" %d",j); } for(j=i-1; j>=1; j--) printf(" %d",j); putchar('\n'); } return 0; }