欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      改錯編程題

      時間:2019-05-15 04:59:42下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《改錯編程題》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《改錯編程題》。

      第一篇:改錯編程題

      實驗二 VC++流程控制語句

      (一)二 程序設(shè)計題

      1、編寫程序,輸入一個不多于5位的整數(shù),求出它是幾位數(shù),并分別打印出每一位數(shù)字,再按逆序打印出各位數(shù)字。

      2、編寫程序,輸入三角形三邊a、b、c,判斷a、b、c能否構(gòu)成三角形。若能,則判斷組成的是等腰、等邊、直角還是一般三角形;若不能,則輸出相應(yīng)的信息。

      1、參考程序 方法一:

      #include void main(){

      int m,a,b,c,d,e;cout<<“輸入一個不多于5位的數(shù)字:”;cin>>m;a=m%10;//個位 b=m/10%10;//十位 c=m/100%10;//百位 d=m/1000%10;//千位 e=m/10000;//萬位

      if(e!=0)cout<

      5位

      數(shù),”<<“

      數(shù)

      是”<

      else if(d!=0)cout<

      else if(c!=0)cout<

      3位數(shù),”<<“逆序各位數(shù)字是位數(shù),”<<“逆序各位數(shù)字是2位數(shù),”<<“逆序各位數(shù)字是”<

      else if(b!=0)cout<

      else cout<

      } //當(dāng)輸入數(shù)字是012時,其實輸入的是八進制數(shù),對應(yīng)的十進制是10。

      方法二:

      #include void main(){

      int a,b,c;//b表示所輸入數(shù)的位數(shù)

      cout<<“請輸入一個不多于5位數(shù)的正整數(shù):”;cin>>a;cout<<“從個位到萬位分別為:”;if(a==0)cout<

      for(b=0;a;b++)

      {

      c=a%10;

      cout<<'t'<

      a=a/10;

      }

      cout<<“ 共”<

      } }

      2、參考程序 #include void main(){

      } int a,b,c;cout<<“輸入三邊的長:”;cin>>a>>b>>c;if(a+b>c&& a-b

      if(a==b&&b==c&&c==a)//錯誤的a==b==c cout<<“能構(gòu)成等邊三角形”<<'n';else if(a==b||a==c||b==c)

      cout<<“能構(gòu)成等腰三角形”<<'n';

      else if(a*a+b*b==c*c||a*a+c*c==b*b||c*c+b*b==a*a)

      cout<<“能構(gòu)成直角三角形”<<'n';

      else

      cout<<“能構(gòu)成一般角形”<<'n';} else cout<<“不能構(gòu)成三角形”<<'n';實驗二 VC++流程控制語句

      (二)1、從鍵盤輸入整數(shù)n,求n的階乘。

      2、從鍵盤輸入若干個實數(shù),以輸入0結(jié)束。設(shè)計一程序,分別統(tǒng)計正數(shù)的個數(shù)和負(fù)數(shù)的個數(shù),并求出正數(shù)之和、負(fù)數(shù)之和及總平均值

      3、設(shè)計一個程序,求出滿足以下條件的最小n值和s值:

      s=1+2+3……….+n, 且s>=600

      4、用二分法解方程f(x)=0的具體算法如下:

      (1)輸入x1,x2,直至f(x1)與f(x2)異號,說明方程在x1、x2之間有解。

      (2)求x1和x2的中點x0.(3)如果f(x0)與f(x1)同號,表明方程的解在x0與x2之間,用x0取代x1;否則方程的解在x0與x1之間,用x0取代x2.(4)如果f(x0)的值足夠小,則方程的近似解為x0;否則重復(fù)執(zhí)行步驟(2)、(3)、(4),直至f(x0)足夠小。

      (5)輸出方程的解x0.2要求用二分法求解方程x+4x-4=0.參考程序:

      1、#include void main(void){

      }

      2、#include void main(void){ float a,s1=0,s2=0;int m=0,n=0;

      cin>>a;while(a){

      if(a>0){ m++;s1+=a;} else{ n++;s2+=a;int i=1,n;long int s=1;cout<<“請輸入一個整數(shù):”;cin>>n;while(i<=n){ s*=i;i++;} cout<<“n!=”<>a;} cout<<“n正數(shù)有”<

      cout<<“n正數(shù)之和為:”<

      3、cout<<“n總的平均為:”<<(s1+s2)/(m+n)<<'n';#include void main(){ int n=0,s=0;while(s<600){

      ++n;} s+=n;cout<<“n=”<

      4、#include #include void main(){

      } float x0,x1,x2;double y0,y1,y2;do{ cout<<“請輸入方程的兩個初始區(qū)間值:”;cin>>x1>>x2;y1=x1*x1+4*x1-4;y2=x2*x2+4*x2-4;}while(y1*y2>0);

      x0=(x1+x2)/2;y0=x0*x0+4*x0-4;do{ if(y0*y1>0){x1=x0;y1=y0;} else {x2=x0;y2=y0;}//可以不要y2=y0;x0=(x1+x2)/2;y0=x0*x0+4*x0-4;}while(fabs(y0)>1e-5);cout<<“方程x^2+4x-4=0的解為”<

      (三)二、改錯題 答案:

      增加 #include

      j=sqrt(i);修改為: int j=sqrt(i);if(i%n=0)break;修改為:if(i%n==0)break;if(k/5=0)cout<<'n';修改為:if(k%5==0)cout<<'n';

      三、編程設(shè)計題

      1、設(shè)計一個程序,輸出所有的水仙花數(shù)。所謂水仙化數(shù)是一個三為數(shù),其各位數(shù)字的立方和等于該數(shù)本身。列如153是一個水仙化數(shù)。水仙花數(shù)的算法分析:

      1)用窮舉法對100~999之間的每個數(shù)驗證,驗證公式為:x=h*h*h+d*d*d+n*n*n 2)分解一個3位數(shù)x的百位、十位和個位。

      2、求出1000以內(nèi)所有完全數(shù),并輸出。例如6就是一個完全數(shù),6的因數(shù)共有4個:1、2、3、6,除了6自身這個因數(shù)外,其他的3個因數(shù)都是它的真因數(shù),把6的所有真因數(shù)都加起來,正好等于6這個自然數(shù)本身。具有這種性質(zhì)的自然數(shù)叫做完全數(shù)。

      參考程序:

      1、#include void main(){

      int x,h,d,n;cout<<“水仙花數(shù)為:”;for(int i=100;i<1000;i++){

      h=i/100;d=i/10%10;n=i%10;x=h*h*h+d*d*d+n*n*n;if(i==x)cout<

      2、#include void main(){

      } int s;for(int i=1;i<=1000;i++){

      } s=0;for(int j=1;j<=i/2;j++)if(i%j==0)

      s+=j;if(s==i)cout<

      實驗三 函數(shù)與編譯預(yù)處理(一)

      三、改錯題

      答案:

      增加#include int isprime(n)修改為:int isprime(int n)if(n%i==0)break;修改為:if(n%i==0)return 0;if(!isprime(k))修改為:if(isprime(k))

      四、編程設(shè)計題

      1、設(shè)計一程序,計算組合數(shù):C(m,r)=m!/(r!*(m-r)!),其中m,r為正整數(shù),且m>r.分別求出C(4,2).C(6,4).C(8,7)的組合數(shù)。求階乘和組合數(shù)須用函數(shù)來實現(xiàn)。

      2、阿克曼函數(shù)定義如下,其中m、n為正整數(shù),設(shè)計一個程序,分別求出Acm(3,2)和Acm(2,2)的值。

      m?0?n?1?Acm(m,n)??Acm(m?1,1)n?0

      ?Acm(m?1,Acm(m,n?1))n?0,m?0?參考程序:

      1、#include long int jc(int n){ if(n==1)return 1;return n*jc(n-1);} long int zh(int m,int r){ int c;

      } if(m<=r){ cout<<“m必須大于r!”<<'n';exit(1);} c=jc(m)/(jc(r)*jc(m-r));return c;

      void main(void){

      }

      2、#include long int Acm(int m,int n){ int c;if(m==0)return n+1;cout<<“C(4,2)=”<

      } if(n==0)return Acm(m-1,1);if(n>0&&m>0){ c=Acm(m,n-1);return Acm(m-1,c);}

      void main(){

      } int m,n;cout<<“Acm(5,3)=”<>m>>n;cout<<“Acm(”<

      實驗三 函數(shù)與編譯預(yù)處理(二)

      三、改錯題 答案:

      在main()的上面增加語句int gys(int x,int y);return y;修改為:return x;

      三、編程設(shè)計題

      1、設(shè)計一程序,將求兩個實數(shù)的最大值函數(shù)放在頭文件myfun.h中,在源程序文件mypro.cpp中包含該頭文件,并實現(xiàn)輸入三個實數(shù),求最大值。

      2、設(shè)計一程序,定義重載函數(shù)area,分別求圓和長方形的面積。

      3、用遞歸法將一個整數(shù)n轉(zhuǎn)換成字符串。例如,輸入整數(shù)567,應(yīng)輸出字符串“567”。n的位數(shù)不確定,可以是任意的整數(shù)。參考程序:

      1、//myfun.h float max(float x, float y){

      float z;if(x>y)z= x;else z=y;return z;} //mypro.cpp #include #include“myfun.h” void main(){ float a,b,c;cin>>a>>b>>c;

      cout<<“最大值為:”<< max(max(a,b),c)<<'n';}

      2、#include #define PI 3.14 double area(float r){ return PI*r*r;} double area(float a,float b){ return a*b;void main(){ } float r=2.5, a=2,b=1.2;cout<<“圓的面積為:”<

      3、#include void fun(int n){

      } int a,b;a=n%10;b=n/10;if(b)fun(b);cout<

      int m;

      } cin>>m;cout<<“轉(zhuǎn)換后的字符串為:”“;fun(m);cout<<”“"<

      實驗四 數(shù)組的應(yīng)用

      (一)一、程序設(shè)計題

      1、定義一個10個整數(shù)的數(shù)組,從鍵盤輸入數(shù)據(jù),設(shè)計一程序,找出其中最大的偶數(shù)和最大的奇數(shù)(若設(shè)有奇數(shù)時,輸出“沒有奇數(shù)!”,若沒有偶數(shù),輸出“沒有偶數(shù)!”)。

      2、輸入一組非0整數(shù)(以輸入0作為輸入結(jié)束標(biāo)志)到一維數(shù)組中。設(shè)計一程序,求出這一組數(shù)的平均值,并分別統(tǒng)計出這一組數(shù)中正數(shù)和負(fù)數(shù)的個數(shù)。參考程序:

      1、#include void main(){ int a[10],b[10],c[10];

      int max1,max2,j=0,k=0,m,n,t;cout<<”請輸入10個整數(shù):“;for(int i=0;i<10;i++)cin>>a[i];for(i=0;i<10;i++){

      if(a[i]%2){ b[j++]=a[i];n=j;} else { c[k++]=a[i];m=k;} } if(j==0)cout<<”沒有奇數(shù)?!?else {

      max1=b[0];cout<<”輸入的奇數(shù)有:“;for(i=0;imax1)max1=b[i];} cout<<”其中最大的奇數(shù)為:“<

      for(i=0;imax2)max2=c[i];} cout<<”其中最大的偶數(shù)為:“<

      2、#include void main(){ int a[100;

      } int,j=0,k=0,t;float avg,s=0;cout<<”請輸入一組整數(shù)(0結(jié)束):“;int i=0;do{ cin>>a[i];s+=a[i];i++;}while(a[i-1]);t=i-1;cout<<”共輸入“<0)j++;else if(a[i]<0)k++;avg=s/t;cout<<”這組數(shù)的平均值為“<

      實驗四 數(shù)組的應(yīng)用

      (二)四、編程題

      1、設(shè)計一程序,用cin.getline()將一個字符串輸入到字符數(shù)組s(char s[200])中,刪除字符串的所有空格后輸出。參考程序 //方法一:

      #include #include void main(){

      }

      //法二: #include #include char s[200],t[200];int i=0,j=0;cout<<”請輸入字符串(回車結(jié)束):“;cin.getline(s,200);cout<<”s=“<