B1036跟奥巴马一起编程

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

输入格式:

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

输出格式:

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

输入样例:

10 a
 

输出样例:

aaaaaaaaaa
a        a
a        a
a        a
aaaaaaaaaa

思路:

逐行打印,第一行和最后一行是一种情况,中间各行是另一种情况;注意,每行的结束需要cout<<endl。

 1 #include <iostream>
 2 using namespace std;
 3 int main()
 4 {
 5     int n;
 6     char c;
 7     cin >> n >> c;
 8     int m = n / 2;
 9     if (n % 2 == 1)m++;
10     for (int i = 0; i < m; i++) {
11         if (i == 0||i==m-1)
12             for (int j = 0; j < n; j++) {
13                 cout << c;
14                 if (j == n - 1)cout << endl;
15             }        
16         else
17             for (int j = 0; j < n; j++) {
18                 if (j == 0 || j == n - 1) {
19                     cout << c;
20                     if (j == n - 1)cout << endl;
21                 }
22                 else cout << " ";
23             }
24     }
25     return 0;
26 }
作者:PennyXia
         
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
原文地址:https://www.cnblogs.com/PennyXia/p/12290461.html