最近在准备APO比赛,在网站上搞到一道题,很有意思
小黑想让你画一个矩形
输入格式
输入一行,包括四个参数:
前两个为整数,依次代表矩阵的长和宽。(长>3且<=10;宽>5且<10)
第三个是字符。
第四个为1或0。(1为实心,0为空心)
输出格式
输出矩阵。
样例
输入:
7 7 @ 0
输出:
@@@@@@@
@ @
@ @
@ @
@ @
@ @
@@@@@@@
————————————一条华丽丽的分割线—————————————————————
方法很多
只讲一种
循环里的题
并不难
我估计很多人看到实心空心就傻眼了
其实我们只需要判断一下就OK
首先把长和宽搞好
int w,h;
还有符号:
char s;
还有0/1:
int x;
两个循环:
for(int i = 1;i <= h;i ++){
for(int j = 1;j <= w;j ++){
}
}
一个判断:
if(x == 0){
if(i == 1 || i == h || j == 1 || j == w){
cout << s;
}else{
cout << " ";
}
}else{
cout << s;
}
OK
上代码:
#include <bits/stdc++.h>
using namespace std;
int main(){
int w,h,x;
char s;
cin >> h >> w >> s >> x;
for(int i = 1;i <= h;i ++){
for(int j = 1;j <= w;j ++){
if(x == 0){
if(i == 1 || i == h || j == 1 || j == w){
cout << s;
}else{
cout << " ";
}
}else{
cout << s;
}
}
cout << endl;
}
return 0;
}