C语言程序改错练习_第1页
C语言程序改错练习_第2页
C语言程序改错练习_第3页
C语言程序改错练习_第4页
C语言程序改错练习_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C语言程序改错练习共 18 题第 2 题 (4.0 分)题号:406难度 :中 第 2 章/*【程序改错】功能:有 1、2、3、4 个数字,能组成多少个互不相 同且无重复数字的三位数?都是多少?*/#include main()int i,j,k;FOUND*printf(n)FOUND*for(i=1;i=5;i+) for(j=1;j5;j+) for (k=1;k5;k+)FOUND*if (i!=k|i!=j|j!=k) printf(%d,%d,%dn,i,j,k);答案:=( 答案 1)= printf(n);=( 答案 2)= for(i=1;i5;i+)= 或= for(i=1

2、;i=4;i+)=( 答案 3)=if (i!=k&i!=j&j!=k)难度:第 9 题 (4.0 分)题号:443中第 2 章/*程序改错】 功能:企业发放的奖金根据利润提成。利润 (i)低于 或等于 10 万元时,奖金可提 10% ;利润高于 10 万元,低 于 20 万元时,低于10 万元的部分按 10%提成,高于 10 万元的 部分,可可提成 7.5% ;20 万到 40 万之间时,高于 20 万元的部分, 可提成 5% ;40 万到 60 万之间时高于 40 万元的部分,可提成3% ;60 万到 100 万之间时,高于 60 万元的部分, 可提成 1.5%, 高于 100 万元时,超

3、过 100 万元的部分按 1% 提成,从键盘输 入当月利润 i,求应发放奖金总数?*/#include main()long int i; doublebonus1,bonus2,bonus4,bonus6,bonus10,bonus;FOUND*/scanf(%ld&i);bonus1=100000*0.1;bonus2=bonus1+100000*0.75;bonus4=bonus2+200000*0.5;bonus6=bonus4+200000*0.3;bonus10=bonus6+400000*0.15;FOUND*/if(i100000)bonus=i*0.1;else if(i=2

4、00000)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;elsebonus=bonus10+(i-1000000)*0.01;FOUND*/printf(bonus=%d,bonus)答案:=( 答案 1)= scanf(%ld,&i);=( 答案 2)= if(i=100000)难度:=( 答案

5、3)= printf(bonus=%d,bonus);第 29 题 (4.0 分)题号:435中 第 2 章/*【程序改错】功 能 : 输 入 n , 计 算 s=1+1+2+1+2+3+1+2+3+4+.+1+2+3+4+.+n*/ #include void main()FOUND*/int i,s;p,n; printf(Enter n:n);FOUND*/scanf(%d,n);FOUND*/for(s=p=0,i=1;in;i+)s+=p+=i;printf(S= %dn,s);答案:=( 答案 1)= int i,s,p,n;=( 答案 2)= scanf(%d,&n);=( 答案

6、 3)= for(s=p=0,i=1;i=n;i+)第 30 题 (4.0 分)题号:556难度:中第 2 章/*【程序改错】题目:下列程序的功能为:按下列公式计算并输出 x 的值。其中 a 和 b 的值由键盘输入。 请纠正程序中存在的错误,使程序实现其功 能。公式: x=2ab/(a+b)2(平方 )*/#include main()int a,b;double x;FOUND*/scanf(%d,%d,a,b);FOUND*/x=2ab/(ab)(ab);FOUND*/printf(x=%d n,x); 答案:=( 答案 1)= scanf(%d,%d,&a,&b);=( 答案 2)= x

7、=2.0*a*b/(a+b)*(a+b);=( 答案 3)= printf(x=%fn,x);难度:第 40 题 (4.0 分)题号 :411难 第 2 章/*程序改错】功能:一球从 100 米高度自由落下,每次落地后反 跳回原高度的一半;再落下,求它在第 10 次落地时, 共经 过多少米?第 10 次反弹多高 ?*/ #includemain()FOUND*/float sn=100.0;hn=sn/2;int n;FOUND*/for(n=2;n10;n+)sn=sn+2*hn;FOUND*/hn=hn%2;printf(the total of road is %fn,sn); prin

8、tf(the tenth is %f metern,hn);答案:=( 答案 1)=float sn=100.0,hn=sn/2;=( 答案 2)= for(n=2;n=10;n+)= 或= for(n=2;n11;n+)=( 答案 3)= hn=hn/2;难度:第 42 题 (4.0 分)题号 :446中 第 1 章/*【程序改错】功能:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。*/ #include main()char c;int letters=0,space=0,digit=0,others=0;printf(please input some charact

9、ersn);FOUND*/while(c=getchar()=n) FOUND*/if(c=a&c=A&c=0&c=a&c=A&c=Z ) = 或=if( c=a | c=A&c=Z )= 或=if( c = a | c = A & c=Z )=( 答案 3)= else if(c= )第 49 题 (4.0 分)题号:433难度:第2章/*程序改错】功能:学习使用按位或 | 。*/ #include main()FOUND*/int a b;a=077;b=a|3;FOUND*/printf(40: The a & b(decimal) is %d n,&b);FOUND*/b|=7prin

10、tf(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.0 分)题号:441难度:中第 2 章/*【程序改错】功能:请输入星期几的第一个字母来判断一下是星 期几,如果第一个字母一样,则继续判断第二个字母。*/ #include conio.h#include void main()char letter;firstletter ofprintf(please input t

11、he somedayn);FOUND*while (letter=getch()=Y)switch (letter)case S:lettern);printf(please input secondif(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(mondayn); break;case T:printf(please input s

12、econd lettern);FOUND*/if(letter=getch()!=u)printf(tuesdayn);else if (letter=getch()=h) printf(thursdayn);elseprintf(data errorn);FOUND*/breakcase W:printf(wednesdayn);break;default:printf(data errorn);答案:=( 答案 1)= while (letter=getch()!=Y)=( 答案 2)= if(letter=getch()=u)=( 答案 3)=break;第 63题 (4.0 分)题号:

13、434难度:中 第 2 章/*【程序改错】功能:以下程序能求出 1*1+2*2+n*n=1000中满足条件的最大的 n*/#include #include string.h main()int n,s;FOUND*s=n=0;FOUND*while(s1000)+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 分)题号:4 难度 :易 第 1 章/*【程序改错】功能:在一个已按升序排列的数组中插入一个数, 插入

14、后,数组元素仍按升序排列。*/ #include #define N 11 main() 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=0;i-)if(number=ai)FOUND*/ai=ai-1;elseai+1=number;FOUND*/exit;if(numbera0) a0=number; printf

15、(The result array:n);for(i=0;iN;i+)PHnw%5d=amrNNNNNNN- - 1HHHN scanf(=%d=eonumbe);NNNNNNN-恥淞 MTNNNNNNfor(iHN2;ivuo;T)for(iHN2;0A.;!)NNNNNNN-恥淞 WTHHHHHN 旦 一 -Miiam break;牺70闊(4.0 ) 常S08 富-号M2M程序改错】功能:将一个正整数分解质因数。例如:输入 90,打印出 90=2*3*3*5*/ #include main()int n,i;printf(nplease input a number:n); scanf(

16、%d,&n);printf(%d=,n);for(i=2;i=n;i+)FOUND*/while(n=i)FOUND*/if(n%i=1)printf(%d*,i);FOUND*/n=n%i; elsebreak;printf(%d,n);答案:=( 答案 1)= while(n!=i)=( 答案 2)= if(n%i=0)= 或= if (!(n%i)( 答案 3)n=n/i;第 76题 (4.0 分) 中 第 1章题号:553难度:/*【程序改错】和高 h,题目:列程序的功能为:已知圆锥半径 r 计算圆锥体积 v。请纠正程序中存在错误, 使程序实现其功能。*/#include main()

17、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 分) 中第 1 章题号:551难度:/*程序改错】题目:下列程序从键盘输入一个数 n,求 1n 之和 并输出。请纠正程序中存在错误,使程序实现其功能。如输入 5输出: The sum from 1 to 5 i

18、s 15 */ #include main()int i=1,n;/*FOUND*/float sum;/*FOUND*/scanf(%d, n);FOUND*/for(;in;i+)sum+=i;%dprintf(The sum from 1 to is %dn,n,sum);答案:=( 答案 1)= float sum=0;=( 答案 2)= scanf(%d,&n);=( 答案 3)= for(;i=n;i+)第 84 题易/*【程序改(4.0 分)第2章错】题号:439功能:求100以内(包括100)的偶数之和 .*/难度:#include 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

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论