当前位置:主页 > 查看内容

蓝桥杯2015年第六届C/C++省赛C组第九题-打印大X

发布时间:2021-04-25 00:00| 位朋友查看

简介:题目描述 源代码 思路 遇到这种题教你们一个万能的思路 第一步先打印上半部分 第二步打印下半部分 像这种题目已经确定了行数为奇数我们就可以直接打印中间一行 # include iostream using namespace std ; int main ( ) { int m , n ; cin m n ; for ( int i……

题目描述

在这里插入图片描述
在这里插入图片描述

源代码

思路:
遇到这种题:教你们一个万能的思路
第一步:先打印上半部分,
第二步:打印下半部分
(像这种题目,已经确定了行数为奇数,我们就可以直接打印中间一行)

#include<iostream>
using namespace std;
int main()
{
	int m,n;
	cin>>m>>n;
	for(int i=1;i<=n/2;i++) //上半部分 
	{
		for(int j=1;j<=m+n-1;j++)
		{
			if((j>=i&&j<i+m)||(j>n-i&&j<=m+n-i)) cout<<"*";
			else cout<<".";
		}
		cout<<endl;
	}
	for(int j=1;j<=m+n-1;j++) //中间一行 
	{
		int l=(n-1)/2;
		int r=l+m;
		if(j>l&&j<=r) cout<<"*";
		else cout<<".";
	}
	cout<<endl;
	for(int i=n/2;i>=1;i--)
	{
		for(int j=1;j<=m+n-1;j++)
		{
			if((j>=i&&j<i+m)||(j>n-i&&j<=m+n-i)) cout<<"*";
			else cout<<".";
		}
		cout<<endl;
	}
	return 0;
} 
;原文链接:https://blog.csdn.net/weixin_45774972/article/details/115430640
本站部分内容转载于网络,版权归原作者所有,转载之目的在于传播更多优秀技术内容,如有侵权请联系QQ/微信:153890879删除,谢谢!

推荐图文


随机推荐