1097:画矩形

1097:画矩形


时间限制: 1000 ms         内存限制: 65536 KB
提交数: 35835     通过数: 21294

【题目描述】

根据参数,画出矩形。输入四个参数:前两个参数为整数,依次代表矩形的高和宽(高不少于3行不多于10行,宽不少于5列不多于10列);第三个参数是一个字符,表示用来画图的矩形符号;第四个参数为1或0,0代表空心,1代表实心。

【输入】

输入一行,包括四个参数:前两个参数为整数,依次代表矩形的高和宽(高不少于3行不多于10行,宽不少于5列不多于10列);第三个参数是一个字符,表示用来画图的矩形符号;第四个参数为1或0,0代表空心,1代表实心。

【输出】

输出画出的图形。

【输入样例】

7 7 @ 0

【输出样例】

@@@@@@@
@     @
@     @
@     @
@     @
@     @
@@@@@@@

提交 统计信息 提交记录


本题库与《信息学奥赛一本通(C++版)》(科学技术文献出版社)配套,版权及相关事宜请与本书作者联系,本网站不作解答。
本网站属公益、非盈利性质,不涉及与书相关的商业活动,后期可能适当收取费用以支持网站的运行维护。
目前因个人编写水平有限,网站维护、网站安全方面及部分功能的开发尚不成熟,如遇疑问,请通过版主信箱联系。
感谢成都石室中学Wuvin、Qizy、Xehoth三位同学对本网站的支持,特别鸣谢北京师范大学ACM前校队易超、唐巧、洪涛同学。
版主信箱:ybt_mail@126.com

这题是一题比较有一点挑战性的那种循环嵌套题型(对于初学者们而言),但是不论如何,我个人的答案里面是只有双重循环的。这个矩形只需要分两种情况讨论·,如果第四参数(即我定义的c)是一的话整个程序就会很简单,不过这里还有一个空心的情况。

第四参数是零的话,需要先输出一行,先输出一个字符和宽参数-2个空格,再输出一个字符,循环操作高参数-2次以后,再输出一整行。

整个程序以分支结构来写,以下代码是可以提交的:

#include<bits/stdc++.h>
using namespace std;
int main(){
int a,b,c;
char op;
cin>>a>>b>>op>>c;
if(c==1){
	for(int i=1;i<=a;i++){
	
	for(int j=1;j<=b;j++)
	cout<<op;
	cout<<endl;
}
}
else {
	for(int i=1;i<=b;i++)
	{
		cout<<op;
	}
	cout<<endl;
	for(int j=1;j<=a-2;j++)
	{
		cout<<op;
		for(int k=1;k<=b-2;k++)
		cout<<" ";
		cout<<op<<endl;
	}
	for(int i=1;i<=b;i++)
	cout<<op;
	}

return 0;
}

就到这里了,886~(・ω<) てへぺろ(wink)

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MOKa君的詟学客栈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值