實(shí)驗(yàn)2循環(huán)結(jié)構(gòu)_第1頁
實(shí)驗(yàn)2循環(huán)結(jié)構(gòu)_第2頁
實(shí)驗(yàn)2循環(huán)結(jié)構(gòu)_第3頁
實(shí)驗(yàn)2循環(huán)結(jié)構(gòu)_第4頁
實(shí)驗(yàn)2循環(huán)結(jié)構(gòu)_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、實(shí)驗(yàn)2  循環(huán)結(jié)構(gòu) 程序填空 1.  本題分值:10 題目描述:馬克思曾經(jīng)出過這樣一道趣味數(shù)學(xué)題:有30個(gè)人在一家小飯館里用餐,其中有男人、女人和小孩。每個(gè)男人花了3先今,每個(gè)女人花了2先令,每個(gè)小孩花了1先令,一共花去50先令。問男人、女人以及小孩各有幾個(gè)人。以下是完成此項(xiàng)工作的程序,請(qǐng)將未完成的部分填入,實(shí)現(xiàn)其功能,并在計(jì)算機(jī)上調(diào)試程序,以測(cè)試填入的部分是否正確。 代碼: #include<iostream> using namespace std; 

2、;int main()      int n;    /n記錄解的個(gè)數(shù)     int a,b,c;  /分別記錄男、女、小孩的人數(shù)     n=_(1)_;    /初始化n的值     for(a=1;a<=30;a+)  

3、60;           for(b=1;b<=30;b+)                      c=_(2)_;            

4、; if( _(3)_ )                              cout<<"男人有:"<<a<<"個(gè);"<<"女人有:"<<b

5、<<"個(gè);"<<"小孩有:"<<c<<"個(gè)。"<<endl;                 n+;                 

6、60;              cout<<"共有"<<n<<"種方案"<<endl;     return 0;   2.  本題分值:10 題目描述:下面程序的功能是輸出1至100之間每位數(shù)的乘積大于每位數(shù)的和的數(shù),請(qǐng)?zhí)羁帐钩绦蛲暾⒃谟?jì)算機(jī)上

7、調(diào)試程序,以測(cè)試填入的部分是否正確。 代碼: #include <iostream> using namespace std; int main()      int n, k=1, s=0, m      for (n=1  n<=100  n+)   

8、60;          k=1  s=0          _(1)_;         while ( _(2)_ )           

9、60;          k*=m%10;             s+=m%10;             _(3)_;          

10、;        if (k>s)  cout<<n<<' '          return 0; 3.題目描述:一個(gè)數(shù)如果恰好等于除它本身的所有因子之和,這個(gè)數(shù)就稱為完數(shù)。例如,6=1+2+3, 6就稱為完數(shù)。輸出1000以內(nèi)所有滿足完數(shù)條件的數(shù)及其個(gè)數(shù)。請(qǐng)閱讀以下不完整的程序,并在計(jì)算機(jī)上調(diào)試該程

11、序以補(bǔ)足其中的空格,實(shí)現(xiàn)其功能。 代碼: #include<iostream> using namespace std; int main()    int n,s,i,count=0;   cout<<"1000以內(nèi)的完數(shù)為:"   for(n=1;n<1000;n+)    s=0;   for(i=1;i<n;i+) /計(jì)算小

12、于n的因數(shù)和  if (n%i=0)  s=s+i;  /如果i是n的因數(shù)if (s=n) /判斷是否滿足完數(shù)的條件   cout<<n<<" " count=count+1; /完數(shù)的個(gè)數(shù)+1        cout<<endl<<"1000以內(nèi)完數(shù)的個(gè)數(shù)為:"<<count<<endl;

13、60; return 0;   4. 題目描述:求100以內(nèi)能被3整除且個(gè)位數(shù)字為9的所有正整數(shù)。請(qǐng)閱讀以下不完整的程序,并在計(jì)算機(jī)上調(diào)試該程序以補(bǔ)足其中的空格,實(shí)現(xiàn)其功能。 代碼: #include<iostream> using namespace std; int main()    int i;   for(i=1;i<100;i+)     

14、; if(i%3=0&& i%10=9)   cout<<i<<" "   return 0;  5. 題目描述:求輸入的兩個(gè)正整數(shù)的最大公約數(shù)。請(qǐng)閱讀以下不完整的程序,并在計(jì)算機(jī)上調(diào)試該程序以補(bǔ)足其中的空格,實(shí)現(xiàn)其功能。 代碼:#include<iostream> using namespace std; int main()  &#

15、160; int x,m,n;   cin>>m>>n;   if(m<n) x=m;   else x=n; /x取m和n中的較小值/x從m和n的較小值開始到1的范圍內(nèi)遞減尋找公約數(shù)while(x>=1)      if(m%x=0 && n%x=0) /如果x是m和n的約數(shù),x的值即為最大公約數(shù)  break; x=x-1;   c

16、out<<x<<endl;  return 0;  6.題目標(biāo)題:數(shù)字求和。 時(shí)間限制:1000MS 內(nèi)存限制:32768KB 題目描述:給定一個(gè)正整數(shù)a,以及另外的5個(gè)正整數(shù),問題是:這5個(gè)整數(shù)中,小于a的整數(shù)的和是多少? 輸入描述:輸入一行,只包括6個(gè)小于100的正整數(shù),其中第一個(gè)正整數(shù)就是a。 輸出描述:輸出一行,給出一個(gè)正整數(shù),是5個(gè)數(shù)中小a的數(shù)的和。 樣例輸入: 10 1 2 3 4 11&#

17、160;樣例輸出: 10 #include<iostream> using namespace std; int main()    int a6;   cout<<"Please input 6 elements"<<endl;   for(int i=0;i<6;i+)      c

18、in>>ai;   int b=a0,sum=0;      for(int j=0;j<6;j+)      if(b>aj) sum=sum+aj;     cout<<"這5個(gè)數(shù)中小于a的數(shù)的和是"<<sum<<endl;  return 0;  7.題目標(biāo)題:球彈跳高度的

19、計(jì)算。 題目描述:一球從某一高度落下(整數(shù),單位米),每次落地后反跳回原來高度的一半,再落下。編程計(jì)算氣球在第5次落地時(shí),共經(jīng)過多少米? 第5次反彈多高? 輸入描述:輸入一個(gè)整數(shù)h0,表示球的初始高度。 輸出描述:兩個(gè)數(shù)據(jù)s和h,分別表示第5次落地時(shí)共經(jīng)過s米,第5次反彈高度為h米,s和h用空格隔開。 注意:結(jié)果可能是實(shí)數(shù),結(jié)果用double類型保存。 提示:輸出時(shí)不需要對(duì)精度特殊控制,用cout<<ANSWER即可。 樣例輸入:10 樣例輸出:28.75 0.3125#include

20、0;<iostream> using namespace std; int main()    double ho,h,s,so; cin>>ho;   h=ho;   s=h;   for(int i=1;i<=5;i+)    h=h/2;  so=2*h; s=s+so;   s=s-so; 

21、 cout<<"第五次落地時(shí)共經(jīng)過"<<s<<"米"<<endl;  cout<<"第五次反彈高度為"<<h<<"米"<<endl;  return 0;  8.題目標(biāo)題:求分?jǐn)?shù)序列和。 題目描述:有一個(gè)分?jǐn)?shù)序列 2/1,3/2,5/3,8/5,13/8,21/13,. 求這個(gè)分?jǐn)?shù)序列的前n項(xiàng)之和。 輸

22、入描述:輸入有一行:正整數(shù)n。 輸出描述:輸出有一行:分?jǐn)?shù)序列的和(浮點(diǎn)數(shù),精確到小數(shù)點(diǎn)后4位)。 【提示】 1. 最好在程序中使用雙精度浮點(diǎn)數(shù)(double)記錄求得的和。 2. 要輸出浮點(diǎn)數(shù)、雙精度數(shù)小數(shù)點(diǎn)后4位數(shù)字,可以用下面這種形式: cout<<fixed<<setprecision(4)<<result<<endl; 按上面的形式控制輸出格式時(shí),需在源程序最開始加上一行:#include<iomanip>。 樣例輸入: 99

23、 樣例輸出: 160.4849 #include<iomanip> #include<iostream> using namespace std; int main()    double m,a=2.0,b=1.0,sum=0.0;   int n;   cout<<"請(qǐng)輸入n值:"   cin>>n;  

24、for(int i=1;i<=n;i+)      sum=sum+(double)a/b;   m=a;   a=a+b;   b=m;     cout<<fixed<<setprecision(4)<<sum<<endl;  return 0;  9.題目標(biāo)題:點(diǎn)和正方形的關(guān)系。 題目描述:在平面坐標(biāo)系中,有一個(gè)正方形,四個(gè)角的

25、坐標(biāo)(x,y)分別是(1,-1),(1,1),(-1,-1),(-1,1),x是橫軸,y是縱軸。寫一個(gè)程序,判斷給定的多個(gè)點(diǎn)是否在這個(gè)正方形內(nèi)。 輸入描述:多組數(shù)據(jù),每行包含兩個(gè)浮點(diǎn)型數(shù)據(jù),分別表示一個(gè)點(diǎn)的橫、縱坐標(biāo),輸入坐標(biāo)為0,0時(shí)表示輸入結(jié)束。(注意,輸入的數(shù)據(jù)不止3組) 輸出描述:對(duì)每組輸入的點(diǎn)進(jìn)行判斷,顯示yes或no,表示是否在正方形中,最后輸入的原點(diǎn)也要顯示yes,然后才不再繼續(xù)輸入點(diǎn)坐標(biāo)。(當(dāng)點(diǎn)在正方形的邊上時(shí),也認(rèn)為在正方形內(nèi)) 樣例輸入: 3 4 0.5 1 0 0 樣例輸出

26、: no yes Yes #include<iostream> using namespace std; int main()   float x,y;  cin>>x>>y;  while(x!=0|y!=0)     if(x>=-1.0&&x<=1.0&&y>=-1.0&&y<=1.0)    cout<<"YES"<<endl;   else cout<<"NO"<<endl;   cin>>x>>y;    if(x=0&&y

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論