PAT-B 1036 跟奧巴馬一起程式設計【列印圖案】

Enjoy_process發表於2019-02-23

                                                PAT-B 1036 跟奧巴馬一起程式設計

                               https://pintia.cn/problem-sets/994805260223102976/problems/994805285812551680

 

 

題目

美國總統奧巴馬不僅呼籲所有人都學習程式設計,甚至以身作則編寫程式碼,成為美國曆史上首位編寫計算機程式碼的總統。2014 年底,為慶祝“電腦科學教育周”正式啟動,奧巴馬編寫了很簡單的計算機程式碼:在螢幕上畫一個正方形。現在你也跟他一起畫吧!

輸入

輸入在一行中給出正方形邊長 N(3≤N≤20)和組成正方形邊的某種字元 C,間隔一個空格。

輸出

輸出由給定字元 C 畫出的正方形。但是注意到行間距比列間距大,所以為了讓結果看上去更像正方形,我們輸出的行數實際上是列數的 50%(四捨五入取整)。

樣例輸入

10 a

樣例輸出

aaaaaaaaaa
a        a
a        a
a        a
aaaaaaaaaa

分析

具體看程式。

C++程式

#include<iostream>

using namespace std;

int main()
{
	int n;
	char c;
	scanf("%d %c",&n,&c);
	double tmp=n/2.0;
	int t=n/2;
	if(tmp-t>=0.5) t++;
	for(int i=1;i<=n;i++)//第一行 
	  putchar(c);
	putchar('\n');
	for(int i=1;i<=t-2;i++)//列印中間
	{
		for(int j=1;j<=n;j++)
		{
			if(j==1||j==n)
		      putchar(c);
		    else
		      putchar(' ');
		}
		putchar('\n');
	} 
	for(int i=1;i<=n;i++)//最後一行 
	  putchar(c);
	putchar('\n');
	return 0;
} 

 

相關文章