C语言编程练习1:打印数字图形

#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int n;//定义整数
while(scanf("%d",&n)!=EOF)//输入整数n
{
for(int i=1;i<2*n;i++)//要打印的行数
{
for(int j = 0;j<abs((n-i)%n);j++)//打印空格
{
printf(" ");
};
if(i<=n)//把每行输出分为行数大于n和行数小于等于n,这是行数小于等于n时
{
for(int m=1;m<=i;m++)
{
printf("%d",m);
};
for(int m=i-1;m>=1;m--)
{
printf("%d",m);
};
}
else//行数大于n时
{
for(int m=1;m<=n-(i-n);m++)
{
printf("%d",m);
};
for(int m=n-(i-n)-1;m>=1;m--)
{
printf("%d",m);
};
};
printf("\n");//换行
};
}
return 0;
}

浙公网安备 33010602011771号