第八周OJ5打印数字图形
来源:互联网 发布:网络推广工资高吗 编辑:程序博客网 时间:2024/05/18 12:32
问题及代码
/* 烟台大学计算机与控制工程学院 文件名称:打印数字图形 作 者:展一 完成时间:2016年10月20日 题目描述 从键盘输入一个整数n(1≤n≤9),打印出指定的数字图形。 输入 正整数n(1≤n≤9)。输出 指定数字图形。样例输入 5样例输出 1 121 12321 1234321123454321 1234321 12321 121 1*/ #include <stdio.h>#include <stdlib.h>int main(){ int n,i,j; 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;}
运行结果
知识点总结
循环结构的熟练运用。
以3为例,可以从最简单的结构开始,即1 然后将空格输出 1 再根据循环将每一行的顺序数字输出 1
1 1 1 1 1 2
1 1 1 1 1 1 1 2 3
然后根据 输出另一半图形 1 再将这一半程序copy下来,将for(i=1;i<=n;i++)改为for(i=n-1;i>0;i--)进行倒着的循环,输出 1
#include <stdio.h> 1 2 1 1 2 1
#include <stdlib.h> 1 2 3 2 1 1 2 3 2 1
int main() 1 2 1
{ 1
int n,i,j;
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");
}
return 0;
}
学习心得
一开始自己做一点也不会,复习了两遍贺老师课上讲的从最初级开始单步思考逐渐复杂,开始弄懂一半,然而却不懂下一半的原理,之后看了贺老师的程序,仔细思考后懂了另一半的原理,并将程序完善。
- 第八周OJ5打印数字图形
- 第八周-打印数字图形
- 第八周oj5
- 第八周 OJ 打印数字图形
- 第八周OJ(5)打印数字图形
- 第八周 oj训练 打印数字图形
- 第八周-OJ-E打印数字图形
- 第八周 oj 2001 打印数字图形
- 第八周OJ项目-打印数字图形
- 第八周练习--打印数字图形
- 第八周 OJ总结<5>-C语言实验——打印数字图形
- 第八周—显示数字图形
- 第八周项目五数字图形
- 如何打印数字图形
- 1034:打印数字图形
- 打印数字图形
- 1034:打印数字图形
- 打印数字图形
- ubuntu 上source 、sh 、bash和。/脚本运行区别
- hdu 2064 汉诺塔III
- Caffe单步调试
- 1019. 数字黑洞 (20)
- Java分解URL
- 第八周OJ5打印数字图形
- 从零开始学C++之运算符重载(四):类型转换运算符、*运算符重载、->运算符重载、operator new 和 operator delete
- 有1,2,3,4这四个数,能组成多少互补相同且无重复的三位数字,都是多少?
- 深入理解struts的运行机制
- [NOIP 2003] 加分二叉树:DP
- Codeforces 731F By Assassin
- Python大数据之numpy
- 压缩和解压缩命令
- [leetcode]141. Linked List Cycle