1036 跟奧巴馬一起程式設計 ——c實現
阿新 • • 發佈:2018-11-05
1036 跟奧巴馬一起程式設計 (15 分)
美國總統奧巴馬不僅呼籲所有人都學習程式設計,甚至以身作則編寫程式碼,成為美國曆史上首位編寫計算機程式碼的總統。2014 年底,為慶祝“電腦科學教育周”正式啟動,奧巴馬編寫了很簡單的計算機程式碼:在螢幕上畫一個正方形。現在你也跟他一起畫吧!
輸入格式:
輸入在一行中給出正方形邊長 N(3≤N≤20)和組成正方形邊的某種字元 C,間隔一個空格。
輸出格式:
輸出由給定字元 C 畫出的正方形。但是注意到行間距比列間距大,所以為了讓結果看上去更像正方形,我們輸出的行數實際上是列數的 50%(四捨五入取整)。
輸入樣例:
10 a
輸出樣例:
aaaaaaaaaa a a a a a a aaaaaaaaaa
思路:這道題很簡單。可以將列印的圖形分成3部分:第一行/中間部分/最後一行。小難點是四捨五入的計算方法,實際上就是一個條件表示式就可以判斷,判斷的核心是根據小數部分是否大於等於0.5,或者取餘的整數是否大於等於1。整數的四捨五入——c實現
程式碼:
//PAT1036V1 #include <stdio.h> int main(){ int n; int i,j; char a; scanf("%d %c",&n,&a); int k=(n-2*(n/2))>=1?n/2+1:n/2; //四捨五入 for(i=0;i<n;i++){ //第一行 printf("%c",a); } for(i=0;i<k-2;i++){ //第二行 printf("\n%c",a); for(j=0;j<n-2;j++) printf(" "); printf("%c",a); } printf("\n"); for(i=0;i<n;i++){ //第三行 printf("%c",a); } return 0; }