#include <stdio.h>
#include <math.h>
int main(void)
{
int i;
int j;
int n;
int k;
int m;
int nNums;
int nShow;
printf("請輸入一個正整數:");
scanf("%d",&n);
// 奇數化 n
if (!(n%2)) n++;
// 擴張
m = n/2;
nNums = 1;
for (i=0;i<(n/2+1);i++)
{
// 求取要顯字之數字
nShow = nNums%10;
// 求取第一個要顯示之位置
for (j=0;j<m;j++)
{
printf(" ");
}
// 列印出數字 (左方階梯)
for (k=0;k<=i;k++)
{
printf("%d",nShow);
}
// 列印數字 (右方階梯)
for (k=0;k<i;k++)
{
printf("%d",nShow);
}
printf("\n");
nNums++;
m--;
}
// 縮減
m = n/2;
for (i=0;i<(n/2);i++)
{
nShow = nNums%10;
// 求取第一個要顯示之位置
printf(" "); // 因為捨棄一組數字, 所以手動追加一個 "空白"
for (j=0;j<i;j++)
{
printf(" ");
}
// 列印出數字 (左方階梯)
for (k=0;k<m;k++)
{
printf("%d",nShow);
}
// 列印數字 (右方階梯)
for (k=0;k<(m-1);k++)
{
printf("%d",nShow);
}
printf("\n");
nNums++;
m--;
}
printf("\n");
system("PAUSE");
return(0);
}
輸入版本2