C語(yǔ)言程序改錯(cuò)練習(xí)_第1頁(yè)
C語(yǔ)言程序改錯(cuò)練習(xí)_第2頁(yè)
C語(yǔ)言程序改錯(cuò)練習(xí)_第3頁(yè)
C語(yǔ)言程序改錯(cuò)練習(xí)_第4頁(yè)
C語(yǔ)言程序改錯(cuò)練習(xí)_第5頁(yè)
已閱讀5頁(yè),還剩11頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 共18題第2題 (4.0分) 題號(hào):406 難度:中 第2章/*- 程序改錯(cuò)-功能:有1、2、3、4個(gè)數(shù)字,能組成多少個(gè)互不一樣且無(wú)重復(fù)數(shù) 字的三位數(shù)?都是多少?-*/#include <stdio.h>main() int i,j,k; /*FOUND*/ printf("n") /*FOUND*/ for(i=1;i<=5;i+) for(j=1;j<5;j+) for (k=1;k<5;k+) /*FOUND*/ if (i!=k|i!=j|j!=k) printf("%d,%d,%dn",i,j,k); 答案:=(

2、答案1)=printf("n");=(答案2)=for(i=1;i<5;i+)=或=for(i=1;i<=4;i+)=(答案3)=if (i!=k&&i!=j&&j!=k)第9題 (4.0分) 題號(hào):443 難度:中 第2章/*- 程序改錯(cuò) -功能:企業(yè)發(fā)放的獎(jiǎng)金根據(jù)利潤(rùn)提成。利潤(rùn)(i)低于或等于10萬(wàn)元 時(shí),獎(jiǎng)金可提10%;利潤(rùn)高于10萬(wàn)元,低于20萬(wàn)元時(shí),低于 10萬(wàn)元的部分按10%提成,高于10萬(wàn)元的部分,可可提成7.5%; 20萬(wàn)到40萬(wàn)之間時(shí),高于20萬(wàn)元的部分,可提成5%;40萬(wàn) 到60萬(wàn)之間時(shí)高于40萬(wàn)元的部分,可提

3、成3%;60萬(wàn)到100萬(wàn) 之間時(shí),高于60萬(wàn)元的部分,可提成1.5%,高于100萬(wàn)元時(shí), 超過(guò)100萬(wàn)元的部分按1%提成,從鍵盤(pán)輸入當(dāng)月利潤(rùn)i,求 應(yīng)發(fā)放獎(jiǎng)金總數(shù)?-*/#include <stdio.h>main() long int i; double bonus1,bonus2,bonus4,bonus6,bonus10,bonus; /*FOUND*/ scanf("%ld"&i); bonus1=100000*0.1;bonus2=bonus1+100000*0.75; bonus4=bonus2+200000*0.5; bonus6=bonu

4、s4+200000*0.3; bonus10=bonus6+400000*0.15; /*FOUND*/ if(i>100000) bonus=i*0.1; else if(i<=200000) bonus=bonus1+(i-100000)*0.075; else if(i<=400000) bonus=bonus2+(i-200000)*0.05; else if(i<=600000) bonus=bonus4+(i-400000)*0.03; else if(i<=1000000) bonus=bonus6+(i-600000)*0.015; else bo

5、nus=bonus10+(i-1000000)*0.01; /*FOUND*/ printf("bonus=%d",bonus)答案:=(答案1)=scanf("%ld",&i);=(答案2)=if(i<=100000)=(答案3)=printf("bonus=%d",bonus);第29題 (4.0分) 題號(hào):435 難度:中 第2章/*- 程序改錯(cuò)-功能:輸入n,計(jì)算s=1+1+2+1+2+3+1+2+3+4+.+1+2+3+4+.+n-*/#include<stdio.h>void main() /*F

6、OUND*/ int i,s;p,n; printf("Enter n:n"); /*FOUND*/ scanf("%d",n); /*FOUND*/ for(s=p=0,i=1;i<n;i+) s+=p+=i; printf("S= %dn",s);答案:=(答案1)=int i,s,p,n;=(答案2)=scanf("%d",&n);=(答案3)=for(s=p=0,i=1;i<=n;i+)第30題 (4.0分) 題號(hào):556 難度:中 第2章/*-程序改錯(cuò)-題目:下列程序的功能為:按下列公

7、式計(jì)算并輸出x的值。其中a和b的值由鍵盤(pán)輸入。 請(qǐng)糾正程序中存在的錯(cuò)誤,使程序?qū)崿F(xiàn)其功能。公式: x=2ab/(a+b)2(平方)-*/#include <stdio.h> main() int a,b; double x;/*FOUND*/ scanf("%d,%d",a,b);/*FOUND*/ x=2ab/(ab)(ab);/*FOUND*/ printf("x=%dn",x);答案:=(答案1)=scanf("%d,%d",&a,&b);=(答案2)=x=2.0*a*b/(a+b)*(a+b);=(

8、答案3)=printf("x=%fn",x);第40題 (4.0分) 題號(hào):411 難度:難 第2章/*- 程序改錯(cuò)-功能:一球從100米高度自由落下,每次落地后反跳回原高度的 一半;再落下,求它在第10次落地時(shí),共經(jīng)過(guò)多少米? 第10次反彈多高?-*/#include<stdio.h>main() /*FOUND*/ float sn=100.0;hn=sn/2; int n; /*FOUND*/ for(n=2;n<10;n+) sn=sn+2*hn; /*FOUND*/ hn=hn%2; printf("the total of road

9、is %fn",sn); printf("the tenth is %f metern",hn);答案:=(答案1)=float sn=100.0,hn=sn/2;=(答案2)=for(n=2;n<=10;n+)=或=for(n=2;n<11;n+)=(答案3)=hn=hn/2;第42題 (4.0分) 題號(hào):446 難度:中 第1章/*-程序改錯(cuò)-功能:輸入一行字符,分別統(tǒng)計(jì)出其中英文字母、空格、數(shù)字和其它字符的個(gè)數(shù)。-*/#include <stdio.h>main() char c; int letters=0,space=0,digi

10、t=0,others=0; printf("please input some charactersn"); /*FOUND*/ while(c=getchar()='n') /*FOUND*/ if(c>='a'&&c<='z'&&c>='A'&&c<='Z') letters+; /*FOUND*/ else if(c=!' ') space+; else if(c>='0'&

11、;&c<='9') digit+; else others+; printf("all in all:char=%d space=%d digit=%d others=%dn",letters, space,digit,others);答案:=(答案1)=while(c=getchar()!='n')=(答案2)=if( c>='a'&&c<='z' | c>='A'&&c<='Z' )=或=if( c<

12、='z'&&c>='a' | c>='A'&&c<='Z' )=或=if( c <= 'z' && c >= 'a' | c >= 'A' && c<='Z' )=(答案3)=else if(c=' ')第49題 (4.0分) 題號(hào):433 難度:中 第2章/*- 程序改錯(cuò)-功能:學(xué)習(xí)使用按位或 | 。-*/#include <stdio.h

13、>main() /*FOUND*/ int a b; a=077; b=a|3; /*FOUND*/ printf("40: The a & b(decimal) is %d n",&b); /*FOUND*/ b|=7 printf("40: The a & b(decimal) is %d n",b);答案:=(答案1)=int a,b;=(答案2)=printf("40: The a & b(decimal) is %d n",b);=(答案3)=b|=7;=或=b=b|7;第61題 (4.

14、0分) 題號(hào):441 難度:中 第2章/*- 程序改錯(cuò)-功能:請(qǐng)輸入星期幾的第一個(gè)字母來(lái)判斷一下是星期幾,如果第一 個(gè)字母一樣,則繼續(xù)判斷第二個(gè)字母。-*/#include "conio.h"#include <stdio.h>void main() char letter; printf("please input the first letter of somedayn"); /*FOUND*/ while (letter=getch()='Y') switch (letter) case 'S': pri

15、ntf("please input second lettern"); if(letter=getch()='a') printf("saturdayn"); else if (letter=getch()='u') printf("sundayn"); else printf("data errorn"); break; case 'F': printf("fridayn"); break; case 'M': printf(&q

16、uot;mondayn"); break; case 'T': printf("please input second lettern"); /*FOUND*/ if(letter=getch()!='u') printf("tuesdayn"); else if (letter=getch()='h') printf("thursdayn"); else printf("data errorn"); /*FOUND*/ break case 'W&

17、#39;: printf("wednesdayn"); break; default: printf("data errorn"); 答案:=(答案1)=while (letter=getch()!='Y')=(答案2)=if(letter=getch()='u')=(答案3)=break;第63題 (4.0分) 題號(hào):434 難度:中 第2章/*- 程序改錯(cuò)-功能:以下程序能求出1*1+2*2+.+n*n<=1000中滿足條件的 最大的n。-*/#include <stdio.h>#include &q

18、uot;string.h"main() int n,s; /*FOUND*/ s=n=0; /*FOUND*/ while(s>1000) +n; s+=n*n; /*FOUND*/ printf("n=%dn",&n-1);答案:=(答案1)=s=n=0;=(答案2)=while(s<=1000)=(答案3)=printf("n=%dn",n-1);第64題 (4.0分) 題號(hào):4 難度:易 第1章/*- 程序改錯(cuò)-功能:在一個(gè)已按升序排列的數(shù)組中插入一個(gè)數(shù),插入后,數(shù) 組元素仍按升序排列。-*/#include <

19、stdio.h>#define N 11main() int i,number,aN=1,2,4,6,8,9,12,15,149,156; printf("please enter an integer to insert in the array:n"); /*FOUND*/ scanf("%d",&number) printf("The original array:n"); for(i=0;i<N-1;i+) printf("%5d",ai); printf("n");

20、 /*FOUND*/ for(i=N-1;i>=0;i-) if(number<=ai) /*FOUND*/ ai=ai-1; else ai+1=number; /*FOUND*/ exit; if(number<a0) a0=number; printf("The result array:n"); for(i=0;i<N;i+) printf("%5d",ai); printf("n");答案:=(答案1)=scanf("%d",&number);=(答案2)=for(i=N-

21、2;i>=0;i-)=或=for(i=N-2;0<=i;i-)=(答案3)=a i + 1 =ai;=(答案4)=break;第70題 (4.0分) 題號(hào):408 難度:中 第2章/*- 程序改錯(cuò)-功能:將一個(gè)正整數(shù)分解質(zhì)因數(shù)。例如:輸入90,打印出90=2*3*3*5-*/#include <stdio.h>main() int n,i; printf("nplease input a number:n"); scanf("%d",&n); printf("%d=",n); for(i=2;i<

22、=n;i+) /*FOUND*/ while(n=i) /*FOUND*/ if(n%i=1) printf("%d*",i); /*FOUND*/ n=n%i; else break; printf("%d",n);答案:=(答案1)=while(n!=i)=(答案2)=if(n%i=0)=或=if (!(n%i)=(答案3)=n=n/i;第76題 (4.0分) 題號(hào):553 難度:中 第1章/*-程序改錯(cuò)-題目:列程序的功能為:已知圓錐半徑r和高h(yuǎn),計(jì)算圓錐體積v。請(qǐng)糾正程序中存在錯(cuò)誤, 使程序?qū)崿F(xiàn)其功能。-*/#include <stdio.

23、h>main() /*FOUND*/float r=10,h=5;/*FOUND*/v=1/3*3.14159*r2*h;/*FOUND*/printf("v=%dn",v);答案:=(答案1)=double r=10,h=5,v;=或=float r=10,h=5,v;=(答案2)=v=1.0/3*3.14159*r*r*h;=(答案3)=printf("v=%fn",v);第79題 (4.0分) 題號(hào):551 難度:中 第1章/*-程序改錯(cuò)-題目:下列程序從鍵盤(pán)輸入一個(gè)數(shù)n,求1n之和并輸出。請(qǐng)糾正程序中存在錯(cuò)誤,使程 序?qū)崿F(xiàn)其功能。 如輸入

24、5 輸出:The sum from 1 to 5 is 15-*/#include <stdio.h>main() int i=1,n;/*FOUND*/ float sum;/*FOUND*/ scanf("%d", n);/*FOUND*/ for(;i<n;i+) sum+=i; printf("The sum from 1 to %d is %dn",n,sum); 答案:=(答案1)=float sum=0;=(答案2)=scanf("%d",&n);=(答案3)=for(;i<=n;i+)第

25、84題 (4.0分) 題號(hào):439 難度:易 第2章/*- 程序改錯(cuò)-功能:求100以(包括100)的偶數(shù)之和.-*/#include <stdio.h>main() /*FOUND*/ int i,sum=1; /*FOUND*/ for(i=2;i<=100;i+=1) sum+=i; /*FOUND*/ printf("Sum=%d n"sum);答案:=(答案1)=int i,sum=0;=(答案2)=for(i=2;i<=100;i+=2)=(答案3)=printf("Sum=%d n",sum);第97題 (4.0分) 題號(hào):413 難度:易 第2章/*- 程序改錯(cuò)-功能

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論