第一題,列印梯形:
題目描述:這題比較簡單,**為:輸入乙個高度h,輸出乙個高為h,上底邊為h的梯形。
輸入:
乙個整數h(1<=h<=1000)。
輸出:
h所對應的梯形。
樣例輸入:
4
樣例輸出:
****
******
********
**********
#include#include#include#include#include#includeusing namespace std;
// h h+2 h+2*2 h+2*3 h+2*4 最後一行共h+2*(h-1)= 3h-2 第i行共h+2*(i-1)
//每行有空格數: 3h-2-h-2*(i-1) = 2*h-2*i
int main()
} return 0;
}
執行結果:
4
****
******
********
**********
第二個問題:
題目描述:**為:把乙個個大小差一圈的筐疊上去,使得從上往下看時,邊筐花色交錯。這個工作現在要讓計算機來完成,得看你的了。
輸入:
輸入是乙個個的三元組,分別是,外筐尺寸n(n為滿足0的奇整數),中心花色字元,外筐花色字元,後二者都為ascii可見字元;
輸出:
輸出疊在一起的筐圖案,中心花色與外筐花色字元從內層起交錯相疊,多筐相疊時,最外筐的角總是被打磨掉。疊筐與疊筐之間應有一行間隔。
樣例輸入:
11 b a
5@w
#include#include#include#include#include#includeusing namespace std;
int output[82][82];
int main()
} if (n != 1)
//不同的for使得區域性變數i,j可以重新被使用
for (int i = 1; i <= n; i++)
}return 0;
}
執行結果:
11 b a
aaaaaaaaa
abbbbbbbbba
abaaaaaaaba
ababbbbbaba
ababaaababa
abababababa
ababaaababa
ababbbbbaba
abaaaaaaaba
abbbbbbbbba
aaaaaaaaa
5 @ w
@@@@www@
@w@w@
@www@
@@@
這裡由於列印按照從上到下,從左到右的方式列印,靠著找規律的方式列印雖然也可以實現,但較為複雜,當然在沒有思路的情況下,完全可以按照找規律,即列印上面梯形的方式輸出結果。本題所採用的的方式是按照陣列的方式進行儲存各個座標,但是很難想到三邊賦值操作。
這裡其實有乙個困惑就是scanf不應該是每次掃瞄乙個資料就輸出依次嗎,為什麼感覺題目所要求的框每隔一行有點奇怪,這個問題暫時mark一下。
3. 趁熱打鐵,用座標的方法輸出下面的圖形(輸入奇數,用%4d列印),這題和上面有一些地方不同,不能用乙個迴圈反覆列印上下,必須按照右面上面左面下面的順序依次進行列印,每個框的邊長每次增加 2,共有 n * n個數,右下角都是邊長的平方。
輸出為:
3
5 6 7
4 1 8
3 2 9
5 17 18 19 20 21
16 5 6 7 22
15 4 1 8 23
14 3 2 9 24
13 12 11 10 25
7 37 38 39 40 41 42 43
36 17 18 19 20 21 44
35 16 5 6 7 22 45
34 15 4 1 8 23 46
33 14 3 2 9 24 47
32 13 12 11 10 25 48
31 30 29 28 27 26 49
**為:
#include#include#include#include#include#includeusing namespace std;
int output[82][82];
int main()
for (int i = 1; i <= n; i++)
}return 0;
}
c c 機試中的 hash 問題
先看乙個問題 要求先輸入數目 n 再輸入 n 個數 取值範圍 0 到 100 n 0 時程式結束,再輸入乙個值 a,輸出 n 個數中與 a 相同的數字的個數。面對這樣的問題,很容易想到的是將輸入的 n 個數先儲存起來,然後 將輸入的 n 與上述的 n 個數進行比較,cnt 的方式最終輸出胡個數,這裡...
王道機試 日期類問題
題目描述 有兩個日期,求兩個日期之間的天數,如果兩個日期是連續的我們規定他們之間的天數為兩天輸入 有多組資料,每組資料有兩行,分別表示兩個日期,形式為yyyymmdd輸出 每組資料輸出一行,即日期差值做題思路 樣例輸入 20110412 20110422樣例輸出 11對於日期類 年月日,就像學生資訊...
座標移動 華為機試 C C
開發乙個座標計算工具,a表示向左移動,d表示向右移動,w表示向上移動,s表示向下移動。從 0,0 點開始移動,從輸入字串裡面讀取一些座標,並將最終輸入結果輸出到輸出檔案裡面。輸入 合法座標為a 或者d或者w或者s 數字 兩位以內 座標之間以 分隔。非法座標點需要進行丟棄。如aa10 a1a yad ...