程序改错题-答案.doc

程序改错题-答案.doc

ID:28574369

大小:77.50 KB

页数:18页

时间:2018-12-11

程序改错题-答案.doc_第1页
程序改错题-答案.doc_第2页
程序改错题-答案.doc_第3页
程序改错题-答案.doc_第4页
程序改错题-答案.doc_第5页
资源描述:

《程序改错题-答案.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、1.程序调试题1(X_2_1.C)调试要求:下列程序不能得到正确的结果,它包含2个错误,请按题中的功能要求,调试并修改该程序(在所修改语句后加/*modified*/字样的注释),使其运行能得到正确的结果。将结果(包括X_2_1.C文件和X_2_1.EXE文件)保存到目录C:KS中。功能说明:计算半径为1~n的圆的面积,仅打印超过50的圆面积。如输入:6则输出:r=4,square=50.265488r=5,square=78.539825r=6,square=113.097351带错误原程序:#includemain(){intr,n;floatarea;s

2、canf("%d",&n);for(r=1,r<=n;r++){area=3.141593*r*r;if(area<50.0)continue;printf("r=%d,square=%d",r,area);}getch();}答案#includemain(){intr,n;floatarea;scanf("%d",&n);for(r=1;r<=n;r++)/*modified*/{area=3.141593*r*r;if(area<50.0)continue;printf("r=%d,square=%f",r,area);/*modified*/}get

3、ch();}2.程序调试题2(X_2_2.C)调试要求:下列程序不能得到正确的结果,它包含3个错误,请按题中的功能要求,调试并修改该程序(在所修改语句后加/*modified*/字样的注释),使其运行能得到正确的结果。将结果(包括X_2_2.C文件和X_2_2.EXE文件)保存到目录C:KS中。功能说明:将输入的十进制整数n通过函数DtoH转换为十六进制数,并将转换结果以字符串形式输出。如输入:79则输出:4F又输入:1234则输出:4D2带错误原程序(见C:KSX_2_2.C):#includeintDtoH(intn,char*str){inti,d;

4、for(i=0;n!=0,i++){d=n%16;if(d>=10)str[i]='0'+d;elsestr[i]='A'+d-10;n/=16;}returni;}main(){inti,k,n;charstr[80];scanf("%d",&n);k=DtoH(n,str);for(i=k-1;i>=0;i--)printf("%c",str(i));getch();}答案#includeintDtoH(intn,char*str){inti,d;for(i=0;n!=0;i++)/*modified*/{d=n%16;if(d<10)/*modified*/

5、str[i]='0'+d;elsestr[i]='A'+d-10;n/=16;}returni;}main(){inti,k,n;charstr[80];scanf("%d",&n);k=DtoH(n,str);for(i=k-1;i>=0;i--)printf("%c",str[i]);/*modified*/getch();}3.程序调试题3(X_2_3.C)调试要求:下列程序不能得到正确的结果,它包含3个错误,请按题中的功能要求,调试并修改该程序(在所修改语句后加/*modified*/字样的注释),使其运行能得到正确的结果。将结果(包括X_2_3.C文件和X_2_3.EXE

6、文件)保存到目录C:KS中。功能说明:函数fun分别统计字符串中大写字母和小写字母的个数,main()函数完成字符串的输入和统计数的输出。如输入:AAaaBBb123CCccccd则输出:upper=6,lower=8带错误原程序(见C:KSX_2_3.C):#includevoidfun(char*s,int*a,int*b){while(*s==''){if(*s>='A'&&*s<='Z')(*a)++;if(*s>='a'

7、

8、*s<='z')(*b)++;s++;}}main(){chars[100];intupper=0,lower=0;ge

9、ts(s);fun(s,&upper,&lower);printf("upper=%d,lower=%d",upper,&lower);getch();}答案#includevoidfun(char*s,int*a,int*b){while(*s!='')/*modified*/{if(*s>='A'&&*s<='Z')(*a)++;if(*s>='a'&&*s<='z')/*modified*/(*b)++;s++;}}main(){c

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。