欢迎来到天天文库
浏览记录
ID:35991718
大小:164.00 KB
页数:6页
时间:2019-04-29
《c程序设计教程与实验 吉顺如》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、《高级语言程序设计实验(2)》测试题重命名该文件:文件名保存为“班级学号姓名”,最后提交该word文件一、程序填空题1.程序功能:函数f的功能是从字符串中删除所有的数字字符,并返回删除的个数;主程序调用函数f删除字符串str中的数字字符,并输出删除的字符数。源程序:#include#includeintf(chars[]){inti=0;____1____;while(s[i]!=' ')if(s[i]>='0'&&s[i]<='9'){strcpy(s+i,s+i+1);count=count+1;/*co
2、unt表示删除的数字字符数*/}else____2____;return____3____;}voidmain(){charstr[80];intm;printf("输入字符串:");gets(str);m=____4____;printf("删除数字后的字符串:");puts(str);printf("删除的数字字符个数:%d",____5____);}12345intcount=0i++countf(str)m2、给定程序中,函数fun的功能是:在形参s所指字符串中寻找与参数c相同的字符,并在其后插入一个与之相同的字符,若找不到相同的字符则函数
3、不做任何处理。例如,s所指字符串为:baacda,c中的字符为:a,执行后s所指字符串为:baaaacdaa。#includevoidfun(char*s,charc){inti,j,n;第6页共6页for(i=0;s[i]!=’___1__’;i++)if(s[i]==c){n=___2___;while(s[i+1+n]!=' ')n++;for(j=i+n+1;j>i;j--);s[j+1]=___3___;i=i+1;}}main(){chars[80]="baacda",c;printf("Thestring:%s
4、",s);printf("Inputacharacter:");scanf("%c",&c);fun(s,c);printf("Theresultis:%s",s);}123‘ ’0s[j]二、程序调试题1.程序调试题1调试要求:下列程序不能得到正确的结果,请按题中的功能要求,调试并修改该程序(在所修改语句后加/*modified*/字样的注释),使其运行能得到正确的结果。将结果截图功能说明:程序计算并输出1!+2!+……+n!(1至n阶乘的累加和),其中函数fact(n)计算n!的值,返回类型为double。如输入:10则输出:
5、1!+2!+…+10!=4037913原程序:#includedoublefact(intn){inti;doubleresult=1;for(i=1;idoublef
6、act(intn){inti;doubleresult=1;for(i=1;i<=n;i++)/*modified*/result=result*i;returnresult;}voidmain(){inti,n;doublesum=0;scanf("%d",&n);for(i=1;i<=n;i++)sum+=fact(i);/*modified*/printf("1!+2!+...+%d!=%.0lf",n,sum);}运行结果截图:2.程序调试题2调试要求:下列程序有3处错误,请按题中的功能要求,在不改变程序结构(不增加、删除语句,不调整语
7、句顺序)的情况下调试并修改该程序(在所修改语句后加/*modified*/字样的注释),使其运行能得到正确的结果。将结果截图。功能说明:以下程序中函数str_to_upper将字符串中的小写字母转换为大写字母,主函数调用此函数及输入输出数据,用户通过键盘输入计算所需的数据。如输入:Helloworld.第6页共6页则输出:HELLOWORLD.原程序(见C:KSC_3_2.C):#includevoidstr_to_upper(char*s){while(*s==' '){if(*s>='a'
8、
9、*s<='z')*s=*s-
10、'A'+'a';s++;}}voidmain(){charstr[80];gets(str);str_to_upper(s
此文档下载收益归作者所有