2756: 【例37.3】 菱形图形
内存限制:64 MB
时间限制:1.000 S
评测方式:文本比较
命题人:
提交:54
解决:34
题目描述
输入一个正整数 $n$,输出用 $1$ 至 ($2n−1$) 的数字组成的菱形。
输入
输入正整数 $n$($1≤n≤10$)。
输出
输出画出的图形。
样例输入 复制
3
样例输出 复制
1
123
12345
123
1
提示
#include<bits/stdc++.h>
using namespace std;
int n,sp,c;
int main(){
cin>>n;
sp=n-1; //每行前面的空格数
c=1; //每行最大的数字
for(int i=1;i<=n;i++,sp--,c+=2) {
for(int j=1;j<=sp;j++) cout<<' ';
for(int j=1;j<=c;j++) cout<<j;
cout<<endl;
}
sp=1;
c-=4; //此前的循环导致c比最大数还要多2,所以必须-4才可以让最大值小2。
for(int i=1;i<=n-1;i++,sp++,c-=2) {
for(int j=1;j<=sp;j++) cout<<' ';
for(int j=1;j<=c;j++) cout<<j;
cout<<endl;
}
return 0;
}