问题及代码
从键盘输入一个整数n(1≤n≤9),打印出指定的数字图形。
输入5
输出
1
121
12321
1234321
123454321
1234321
12321
121
1
#include <stdio.h>
#include <stdlib.h>
int main()
{
int j,n,i;
scanf ("%d",&n);
for(i=1; i<=n; i++)//前n行
{
for(j=1; j<=n-i; j++)//前空格数目
{
printf (" ");
}
for(j=1; j<=i; j++)//前1至n行前n个数字
{
printf("%d",j);
}
for(j=i-1; j>0; j--)//前1至n行后n个数字
{
printf("%d",j);
}
printf("\n");//换行
}
for(i=n-1; i>0; i--)//后n行
{
for(j=1; j<=n-i; j++)//后n行空格数目
{
printf(" ");
}
for(j=1; j<=i; j++)//后n行前n个数
{
printf("%d",j);
}
for(j=i-1; j>0; j--)//后n行后n个数字
{
printf("%d",j);
}
printf("\n");
}
return 0;
}
运算结果
知识点总结
循环语句for的复杂应用,考察对题目的理解和观察能力。
学习心得
先把整个要输出的程序分成几个小块 然后再逐个击破化繁为简。