资源描述:
《c语言程序改错讲解》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、一、程序改错共44题第1题(10.0分)题号:380难度沖第2章/*【程序改错】功能:输入两个双精度数,函数返回它们的平方和的平方根值。例如:输入:22.936和14.121,输出为:y=26.934415。-*/^include^include^include/氺氺氺氺氺氺氺氺氺氺found氺氺氺*氺氺氺氺氺氺/doublefun(double氺a,*b)//doublefun(double氺a,double*b){doublec;/氺承氺氺氺氺氺氺氺氺found*本********/c=sqr(a*a+
2、b*b);//c=sqrt(a*a+b氺b);/木氺氺氺氺氺氺氺氺氺found木*氺氺氺氺氺氺氺氺/return*c;//returnc;}main(){doublea,b,y;printf(z,Entera,b:〃);scanf("%lf%lf〃,&b);y=fun(&a,&b);printfCy=%fy);}第2题(10.0分)题号:438难度:中/*【程序改错】功能:编写函数ftm,求两个整数的最小公倍数,然后用主函数mainO调用这个函数并输出结果,两个整数由键盘输入。^includeintfun(intm,intn){int
3、i;/氺氺氺氺氺氺氺氺氺氺found**氺氺氺氺氺氺氺氺/if(m=n)//if(m〈n){i=m;m=n;n=i;}for(i=m;i<=m*n;i+=m)/氺氺氺氺氺氺氺氺糸氺found氺氺氺氺氺氺氺氺糸氺/if(i%n~l)//if(i%n==0)return(i);return0;}mainO{unsignedintin,n,cj;printfCm,n=//);scanf(,,%d,%d,,>&m,&n);/氺氺氺氺氺氺氺氺氺氺found氺氺氺氺氺氺氺氺氺氺/q==fun(m,n);//q=fun(m,n);printf("p(%d,%d)=%d",
4、m,n,q);}第3题(10.0分)题号:404难度:易第2章/*【程序改错】功能:编写函数求2!+4!+6!+8!+10+12!+14!。•*/^includelongsum(intn){/氺氺氺氺氺氺氺氺氺氺found氺氺氺氺氺氺氺氺氺*/inti,j//inti,j;longt,s=0;/氺承氺本氺氺氺氺氺氺found**氺本氺氺氺氺氺氺/for(i=2;i<=n;i++)//for(i=2;i<=n;i=i+2)或for(i=2;i<=n;i+=2){t=l;for(j=l;j<=i;j++)s=s+t;}/氺糸氺氺氺氺氺氺氺氺fo
5、und氺糸氺氺氺氺氺氺氺氺/return(t);//return(s);}main(){printf("thissum=%1drT,sum(14));}第4题(10.0分)题号:360难度:中第2章!如—/*T*【程序改错】功能.•计算正整数ntim的各位上的数字之积。例如:若输入:252,则输出应该是:20。若输入:202,则输出应该是:0。•*/^include^includelongfun(longnum){/*木本本木木本***found*木本本木木本本本本/longk=l//longk=l;do{k*=num%
6、10;/氺氺氺氺氺氺氺氺氺氺found**氺氺氺氺氺氺氺木/num=10;//num/=10;或num=num/10;/氺氺氺氺氺氺氺氺氺氺found氺氺氺氺氺氺氺氺氺氺/}while(!num);//}while(num);或}while(num!=0);return(k);main()longn;printf(/zPleaseenteranumber,);scanf(〃%ld〃,&n);printf("%ld",fun(n));}第5题(10.0分)题号:413难度:易第2章【程序改错】功能:读取7个数(1-50)的整数值,每读取一个值,程序打
7、印出该值个数的*。^includemain(){inti,a,n=l;/氺奉氺氺氺氺氺氺氺氺FOUND**氺氺氺氺氺氺氺氺/while(n<7)//while(n〈=7)或while(n〈8){do{scanf("%cT,&a);}/氺氺氺氺氺氺氺氺承氺found氺氺氺氺氺氺氺氺承氺/whilc(a50);//while(a〈l
8、
9、a>50);或while(a>50
10、
11、a〈l);/氺氺氺氺氺氺氺氺氺氺found氺氺氺氺氺氺氺氺氺氺/for(i=0;i<=a;i++)//for(i1:i<:a;i++)printfr,);prin
12、tfOrT);n++;1IJ第6题(10.0分)题号