1. 程式人生 > >關於新手陣列:樣題:陶陶摘蘋果

關於新手陣列:樣題:陶陶摘蘋果

宣告:為什麼我要把這道題寫下來呢?因為我覺得這道題很有挑戰性,

(我難道會告訴你們我上了提高班連這個都差點A不過嗎?)。

不說啥了,寫教程吧:

題目及題解奉上:

 

題目描述

 

陶陶家的院子裡有一棵蘋果樹,每到秋天樹上就會結出1010個蘋果。蘋果成熟的時候,陶陶就會跑去摘蘋果。陶陶有個3030釐米高的板凳,當她不能直接用手摘到蘋果的時候,就會踩到板凳上再試試。

現在已知10個蘋果到地面的高度,以及陶陶把手伸直的時候能夠達到的最大高度,請幫陶陶算一下她能夠摘到的蘋果的數目。假設她碰到蘋果,蘋果就會掉下來。

輸入格式

輸入包括兩行資料。第一行包含1010個100100到200200之間(包括100100和200200)的整數(以釐米為單位)分別表示1010個蘋果到地面的高度,兩個相鄰的整數之間用一個空格隔開。

第二行只包括一個100100到120120之間(包含100100和120120)的整數(以釐米為單位),表示陶陶把手伸直的時候能夠達到的最大高度。

(原來陶陶不到120cm)

 

輸出格式

輸出包括一行,這一行只包含一個整數,表示陶陶能夠摘到的蘋果的數目。

輸入輸出樣例:

 

(題目來源:洛谷P1046,截圖自洛谷)

 先分析一波,如果能看出來的話,程式碼僅供參考,反之在看程式碼吧。

這道題,是集陣列,for迴圈和if語句一體的一道水題,首先用陣列及for迴圈輸入10個蘋果的高度,然後一一與陶陶站在板凳上(身高+30)的高度比較,陶陶的身高+板凳高度如果大於蘋果高度,這不就搞定了嗎?然後就計數器++(以下定義c,呈現為c++)

,如果小於的話則不做處理,最後,輸出計數器記了幾個數,加上return 0;這道題就AC了,是不是很簡單?所以程式碼最好不要看喲,否則養成了動不動看題解的習慣,就會像我這樣…………

程式碼奉上:

#include<iostream>

using namespace std;

int a[15]; //定義在全域性變數中比較容易使用,否則隨便定義在哪不一定就忘記在哪個範圍中了,然後就又要重新定義。

int main()

{

int d,b,c=0;//變數定義的時候最好一下子定義完畢,如果不知道要定義幾個,就確保在記住每個變數的意思的時候變數++(繼續定義)

for(int i=1;i<=10;i++)

cin>>a[i];//用for迴圈分別輸入10個變數簡單,比cin>>簡潔多了

cin>>b;//陶陶不到121CM的身高出現了!!!

d=b+30;//陶陶站在板凳上的身高,當然吃飽了之後也可以先比較蘋果與陶陶的身高,然後在加上30後再比較一波。(僅限吃飽了之後)

for(int i=1;i<=10;i++)//for迴圈實現這十個蘋果的與接下來作比較的鋪墊

{if(a[i]<=d)

c++;

}

cout<<c;

return 0;

}

PS:這是我學了好長時間C++之後第一次用部落格記錄我的心得,真的心中感慨萬千,有要超越老一輩的雄心,還有要幫助小一輩的關懷,我還是好好學習吧,為了我和你們!

最後附上我的emmm自己看吧,特別美的喲。

&n