本程序應先找出變量間的關系,這樣就基本上沒有什么問題了。另外,要明確第1天桃子數和第2天桃子數之間的關系,即第2天桃子數加1的2倍等于第一天的桃子數。
實現過程如下:
(1)創(chuàng)建一個C文件。
(2)引用頭文件。
#include <stdio.h>
(3)定義day、x1、x2為基本整型,并為day、x2賦初值9和1。
(4)使用while語句從后向前推出第一天摘的桃子數。
(5)將最終求出的結果輸出。
(6)主要程序代碼如下:
main()
{
int day,x1,x2; /*定義day、x1、x2 3個變量為基本整型*/
day=9;
x2=1;
while(day>0)
{
x1=(x2+1)*2; /*第1天的桃子數是第2天桃子數加1后的2倍*/
x2=x1;
day--; /*因為從后向前推天數遞減*/
}
printf("the total is %d\n",x1); /*輸出桃子的總數*/
}
DIY:在屏幕上輸出3行“*”,每行3個。提示:使用循環(huán)語句。(25分)(實例位置:光盤\mr\01\qjyy\03_diy)
1.8.4 情景應用4——陽陽買蘋果
視頻講解:光盤\mr\lx\01\陽陽買蘋果.exe
實例位置:光盤\mr\01\qjyy\04
陽陽買蘋果,每個蘋果0.8元,第1天她買兩個蘋果,第2天開始每天買前一天的2倍,直到購買的蘋果個數達到不超過100的最大值,編程求陽陽每天平均花多少錢。
程序運行結果如圖1.38所示。
解決本實例首先來分析題目要求,假設每天購買的蘋果數為n,花的錢數總和為money,那么money和n之間的關系可以通過一個等式來說明,即money=money+0.8*n,它的具體含義是截止到目前所花的錢數等于今天所購買的蘋果花的錢數與之前所花的錢數的總和。這里應注意n的變化,n初值應為2,隨著天數每天增加(day++),n值隨之變化,即n=n*2,以上過程應在while循環(huán)體中進行,那么什么才是這個while語句結束的條件呢?根據題意可知為“購買的蘋果個數應是不超過100的最大值”,那么很明顯n的值是否小于100就是判斷這個while語句是否執(zhí)行的條件。
實現過程如下:
(1)創(chuàng)建一個C文件。
(2)引用頭文件。
#include <stdio.h>
(3)定義變量n、day為基本整型并賦初值分別為2和0,定義變量money、ave為單精度型,并給money賦初值為0。
(4)使用while語句實現每天所買蘋果錢數的累加和天數自加以及每天所買蘋果數的變化。
(5)求出平均數并將其輸出。
(6)主要程序代碼如下: