问题及代码:
/*Copyright(c)2016,烟台大学计算机学院
all rights reserved.
作者:曹欣宇
完成日期:2016年10月22日
版本号:v1.0
题目描述
输入一个正整数,打印数字图形
输入
正整数
输出
数字图形
样例输入
5
样例输出
如图*/
#include<stdio.h>
int main()
{
int i,j,n;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
for(j=1;j<=n-i;j++)
{
printf(" ");
}
for(j=1;j<=i;j++)
{
printf("%d",j);
}
for(j=i-1;j>0;j--)
{
printf("%d",j);
}
printf("\n");
}
for(i=n-1;i>0;i--)
{
for(j=1;j<=n-i;j++)
{
printf(" ");
}
for(j=1;j<=i;j++)
{
printf("%d",j);
}
for(j=i-1;j>0;j--)
{
printf("%d",j);
}
printf("\n");
}
return 0;
}
运行结果:
知识点总结:
通过学习,进一步掌握了循环结构
学习心得:其实这个代码是老师上课讲的,然而我在重新看时,却发现有的地方看不懂,于是去询问贺老师,然后老师让我再继续修炼......终于最后我找到了自己的思路,并且感觉像是对这个题有了进一层的理解,以下是适合我的思路的代码,虽然只是略有修改,但还是蛮有成就感的
#include<stdio.h>
int main()
{
int i,j,n;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
for(j=1;j<=n-i;j++)
{
printf(" ");
}
for(j=1;j<=i;j++)
{
printf("%d",j);
}
for(j=i-1;j>0;j--)
{
printf("%d",j);
}
printf("\n");
}
for(i=1;i<=n;i++)
{
for(j=1;j<=i;j++)
{
printf(" ");
}
for(j=1;j<=n-i;j++)
{
printf("%d",j);
}
for(j=n-i-1;j>0;j--)
{
printf("%d",j);
}
printf("\n");
}
return 0;
}