大学生C语言程序设计(第四版谭洪强)实验6答案.doc

大学生C语言程序设计(第四版谭洪强)实验6答案.doc

ID:51236556

大小:70.00 KB

页数:4页

时间:2020-03-10

大学生C语言程序设计(第四版谭洪强)实验6答案.doc_第1页
大学生C语言程序设计(第四版谭洪强)实验6答案.doc_第2页
大学生C语言程序设计(第四版谭洪强)实验6答案.doc_第3页
大学生C语言程序设计(第四版谭洪强)实验6答案.doc_第4页
资源描述:

《大学生C语言程序设计(第四版谭洪强)实验6答案.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验六参考答案(参考答案)(1)设计程序sy6-1.c,输入一个字符串,将其中的大写字母都改为对应的小写字母,其他字符不变。例如,若输入"Ab,cD",则输出"ab,cd"。算法分析:使用for循环遍历字符串,在遍历的过程中,如果该元素是大写字母时,能过str[i]=str[i]+32把大写字母置换成相应小写字母参考答案:#include#includevoidmain(){charstr[100];inti;printf("请输入一个字符串:");gets(str);for(i=0;str[i]!='

2、';i++)if(str[i]>='A'&&str[i]<='Z')str[i]=str[i]+32;printf("输出转换后的字符串:");puts(str);}运行结果:(2)设计程序sy6-2.c,输入一个字符串,删除其中所有的小写字母'c'。例如,若输入字符串"acabcbcdef",则应输出字符串"aabbdef"算法分析:在原字符数组中删除指定字符时,当遍历的字符不等于要删除的字符时,在原数组中赋值。注意在赋值的时候,元素下标不同步,所以用j做为删除后的下标,并且是赋一个值,其下标自动加1,所以最后j的值为数组的长度,另外

3、为了保证字符数组能正确输出,所以在最后要人为加一个参考答案:#include#includevoidmain(){inti,j=0;charstr[20];printf("请输入一个字符:");gets(str);for(i=0;str[i]!='';i++)if(str[i]!='c')str[j++]=str[i];//将指定字符c删除str[j]='';printf("请输入一个字符:");puts(str);}运行结果:(3)设计程序sy6-3.c,输入一个字符串,统计其中'a'到'

4、z'26个英文小写字母各自出现的次数。例如运行时输入字符串:abcdefgabcdeabc后,则输出的结果应该是:33322110000000000000000000算法分析:用a数组的a[0](其中0下标是'a'-'a')存放'a'字符的个数,a[1](其中1下标是'b'-'a')存放'b'字符的个数,a[str[i]-'a'](其中str[i]-'a'下标是str[i]字符对应存储个数的下标)存放str[i]字符的个数。因此在程序中只需用str[i]-'a'作为a下标的元素进行自加即可。参考答案:#includevoi

5、dmain(){charstr[100];inti,a[26]={0};//分别统计26小写字母的个数,初始时都为0个printf("请输入一个字符串:");gets(str);for(i=0;str[i]!='';i++)if(str[i]>='a'&&str[i]<='z')//是小写字母才统计a[str[i]-'a']++;//str[i]-'a'作为a数组下标的元素进行自加,//即可使相应统计个数的元素值加一for(i=0;i<26;i++)//输出统计结果printf("%c:%-3d",'a'+i,a[i]);}运行结果:(

6、4)设计程序sy6-4.c,将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串"-1234",则函数把它转换为整数值-1234。算法分析:将数字字符转换成数字的做法是,将该数字字符减去'0'字符,在转换时需要逐个字符判断为数字字符才转换,不是不转换。为了保证转换的数字为一个原顺序的整数,则把s*10后再把转换后的数字累加入s中。最后再对字符串中的第一个字符进行判断看是否是‘-’;如果是,则把s置成-s即可参考答案:#includevoidmain(){charstr[100]

7、;inti,s=0;printf("请输入一个字符串:");gets(str);for(i=0;str[i]!='';i++)//逐一把每个数字字符转换累加到数s中if(str[i]>='0'&&str[i]<='9')s=s*10+str[i]-'0';if(str[0]=='-')s=-s;//判断符号位printf("result=%d",s);}运行结果:(5)设计程序sy6-6.c,将放在字符串数组中的M个字符串(每串的长度不超过N),按顺序合并组成一个新的字符串。例如,字符串数组中的M个字符串为:AAAABBBBBBBC

8、C则合并后的字符串的内容应是:AAAABBBBBBBCC。算法分析:首先对p串初始化为''再将s中的每个字符串连接在p串的后边。但要注意将string.h包含在程序中参考答案

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

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

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