数字菱形图案 题解

数字菱形图案

这道题目,其实就是考验了你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

扫描二维码关注公众号,回复: 10448751 查看本文章
                                 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;
}

关注我,给你更多题解~

发布了14 篇原创文章 · 获赞 8 · 访问量 1159

猜你喜欢

转载自blog.csdn.net/Horse_Lake/article/details/103936137