数字菱形图案
这道题目,其实就是考验了你For循环应用的技巧。
题目
数字菱形图案
Time Limit:1000MS Memory Limit:65536K
Total Submit:24 Accepted:16
Description
输入n的值,输出一个n层的数字菱形图案。
Input
只有一行且只有一个正整数: n ( 1 <= n <= 9 )
Output
一个由数字组成的n层的数字菱形图案,其中第一层的“1”在第一行的第40 列。
Sample Input
5
Sample Output
1
121
12321
1234321
123454321
1234321
12321
121
1
Accepted Code
#include <iostream>
#include <iomanip>
using namespace std;
long long n,k;
int main()
{
cin>>n;
for(int i=1;i<=2*n-1;i++){
if(i<=n) k=i;
else k=2*n-i;
cout<<setw(41-k)<<1;
for(int j=2;j<=2*k-1;j++){
if(j<=k) cout<<j;
else cout<<2*k-j;
}
cout<<endl;
}
return 0;
}
关注我,给你更多题解~