PAT-B-1036-跟奥巴马一起编程

美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统。2014 年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了很简单的计算机代码:在屏幕上画一个正方形。现在你也跟他一起画吧!

输入格式:

输入在一行中给出正方形边长 N(3≤N≤20)和组成正方形边的某种字符 C,间隔一个空格。

输出格式:

输出由给定字符 C 画出的正方形。但是注意到行间距比列间距大,所以为了让结果看上去更像正方形,我们输出的行数实际上是列数的 50%(四舍五入取整)。

输入样例:

1
10 a

输出样例:

1
2
3
4
5
aaaaaaaaaa
a a
a a
a a
aaaaaaaaaa

Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
//注意行距是正常的,没有额外添加回车
#include <iostream>
using namespace std;

int main(){

int n,m;
char c;
scanf("%d %c",&n,&c);

//为避免浮点数的介入,四舍五入自己判定
if(n%2==0)
//偶数
m=n/2;
else
m=n/2+1;
for(int i=0;i<m;i++){
for(int j=0;j<n;j++){
if(i==0||i==m-1){
printf("%c",c);
continue;
}
if(j==0||j==n-1)
printf("%c",c);
else
printf(" ");
}
if(i!=m-1)
printf("\n");
}
return 0;
}

----\(˙<>˙)/----赞赏一下吧~