打印数字图形(函数专题)
来源:互联网 发布:手机开淘宝店怎么装修 编辑:程序博客网 时间:2024/06/07 10:20
题目:从键盘输入一个整数n(1≤n≤9),打印出指定的数字图形。要求在程序中定义并调用函数PrintLine()来输出一行数字,函数原型:void PrintLine(int n)
输入:正整数n(1<=n<=9)
输出:指定数字图形
Exemple:
输入:5
输出:
1
121
12321
1234321
123454321
1234321
12321
121
1
解题思路:由输出我们可以知道一共有(2n-1)行(i 是第几行,j是每行的数),前n行正常,从第n+1行开始,每行的最大数是(2n-i),然后每一行的数输到 i 之后再倒着输出,直到1。
注意:输出的每行数前面还有空格!!!
My DaiMa:
#include<stdio.h>
void PrintLine(int n)
{
int i,j;
for(i=1;i<2*n;i++)
{
if(i<=n)
{
for(j=1;j<=n-i;j++)
printf(" "); //先处理空格的问题,这是输出空格的操作
for(j=1;j<=i;j++)
printf("%d",j); //这些是第 i 行第 i 个数前面的数,正常输出就行咧
for(j=i-1;j>0;j--)
printf("%d",j); //这些就是第 i +1个数的输出情况,倒着输出这些数就行咧
}
else
{
for(j=1;j<=i-n;j++)
printf(" "); //处理空格的操作
for(j=1;j<=2*n-i;j++)
printf("%d",j); //这些是第n+1行以后的数的操作
for(j=(2*n-i-1);j>0;j--)
printf("%d",j);
}
printf("\n"); //每输完一行,都要进行换行
}
}
int main()
{
int n;
scanf("%d",&n);
PrintLine(n);
return 0;
}
- 1108: 打印数字图形(函数专题)
- 1108: 打印数字图形(函数专题)
- 打印数字图形(函数专题)
- zzuli OJ 1108: 打印数字图形(函数专题)
- ZZULIOJ 1108: 打印数字图形(函数专题,水题)
- 如何打印数字图形
- 1034:打印数字图形
- 打印数字图形
- 1034:打印数字图形
- 打印数字图形
- SDJZU 打印数字图形
- 打印数字图形
- 打印数字图形
- 打印数字图形
- oj打印数字图形
- 打印数字图形
- java打印数字图形
- 打印数字图形
- 机器学习中的数学(7)——PCA的数学原理
- SpringMVC ajax传值问题
- 基于react16 webpack3 搭建前端spa基础框架 react-router的4种异步加载方式
- you need to resolve your current index first 解决办法
- Android 8.0系统上使用WindowManager添加view的一个问题
- 打印数字图形(函数专题)
- 如何打印输出64位整形
- python2.7.11-configparser-报错:File contains no section headers.
- @RequestMapping(value = "", produces = "application/json")
- GIT 解决冲突
- Heapster -- Kubernetes Dashboard集成Heapster
- LabVIEW学习
- bzoj 2243:[SDOI2011]染色 树链剖分
- mongoDB分组再筛选java