C 实验_2字符串及基本输入输出.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
暨南大学本科实验报告专用纸 课程名称 成绩评定 实验项目名称 指导教师 实验项目编号 实验项目类型 实验地点 学生姓名 学号 学院 系 专业 实验时间 年 月 日 。 写一个程序,找出输入中最长和最短的字符串。 问题分析与解决 根据题意,需要得到输出四个值:最长maxlength,最短minlength以及其对应的字符串。先将字符串单个读取,并逐一进行比较,将当前比较所得的字符串最长与最短值分别保存在maxlength 与 minlength 中,并将字符串全部存放在一容器中。然后分别将长度为最长与最短的字符串分别存储在两容器中,输出即可。 预设maxlength=0 与minlength=1000 ,并在读取时进行比较,存入 vector ret 中。 将长度为最长与最短的字符分别存入vector longret 与 shortret 中。 调试、测试运行情况及结果分析 测试数据及运行结果 结果分析与结论 根据输入的数据(上图上部分),得出最长字符长度33,找到并输出一个与其相符的字符串:“designers should build an original”;得出最短字符长度6,找到并输出两给与其相符的字符串:“it out”、“of the”。程序运行正确,并达到实验要求。 (二)单词计数 题意描述:练习4-5(输入以EOF标记结束) 写一个函数,从输入流中读取单词,并把单词保存在一个vector 中。然后使用这个函数写一个程序,计算输入中单词的数目,并计算每个单词出现的次数。 问题分析与解决 首先,需要将输入流中的单词读取出来并把它保存在一个vector word 中,用到函数 Getwords() ,该函数有编程者自己定义。然后将vector word中的每个元素单独作为处理对象,从第一个开始,逐个与其后的元素比较,遇到相同的便从vector word中删除,并将删除次数纪录在vector Times中直到最后一个。此为第一轮比较。然后取vector word中的第二个,从第三个开始与其比较,删除相同的,依此类推。直到 vector word 中没有相同元素为止。 通过Getwords( )来得到单个单词: 对单词进行单个处理,并将vector中的重复单词删除,couts纪录删除次数: 调试、测试运行情况及结果分析 实验中碰到的问题及解决方法 原想通过构造一结构体,分别将word 与 times 分别记录,然后用以vector存储,而在存储前进行必要的比较,若vector中已有该单词,则只将times自加1,结果失败。原因:结构体中只能是静态变量(static)。后改用本次实验中的方法,见“问题分析与解决”。 测试数据及运行结果 结果分析与结论 输入:“I love My home , home is a good place !”总共10个不同的单词(标点符号算作单个单词);有输出可知:该string种有单词10个,除了home 出现2次,其他的均出现1次。结果正确,达到实验要求。 (三)异常处理 题意描述:3-6 在3.1的程序中,如果学生没有输入任何家庭作业成绩,那么计算平均值时可能会除以0。在C++中,除以0是不确定的,也就是说系统会进行随意操作。首先描述在你的系统在程序运行中出现除以0的情况时如何反应;然后在3.1节的程序中添加C++的异常处理,使得程序行为不依赖于系统如何对待除以0的情况。 问题分析与解决 题中需解决问题:若没有输入家庭作业成绩时,使程序行为不依赖与系统对待除以0的处理。只需在得到家庭作业最终成绩前,对输入的家庭做业次数进行判断是否合法即可。在3.1程序中添加如下部分: 调试、测试运行情况及结果分析 实验中碰到的问题及解决方法 原代码: 结果: 当输入homework数位0时,出错。不太会使用domain_error() 函数。 测试数据及运行结果 当输入0个homework成绩时,系统自动处理如下: 修改后:提醒出错! 正确输入并运行正确。 结果分析与结论 由(2)可知基本达到实验要求。 (四)多个学生的成绩 题意描述:练习4-0,练习4-6。 4-0:编译、执行并测试本章的程序。 4-6:重写Student_info结构来直接计算成绩,并且在Student_info结构中只保存最终成绩。 也就是说,首先,务必看懂4.5节的程序,弄清楚每个函数的来龙去脉,作用何在。然后,将Student_info 结构体的定义改写为: Student_info{string name, double finalGrade} 其中 finalGrad

您可能关注的文档

文档评论(0)

153****9595 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档