cprimer第五版第五章习题答案.docxVIP

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
c++primer第五版第五章习题 5.1 单独一个分号为空语句 比如当循环的工作在条件部分完成时。 5.2 复合语句 花括号 语法要求一语句,逻辑要求多语句 5.3 5.4 (a)感觉可以 (b)赋值肯定为真 而且status作用域也有问题 5.5 #includeiostream #includevector #includestring using namespace std; const vectorstringscores={F,D,C,B,A,A++}; int grade; string s_grade; int main() { while(cingrade) { if(grade60) s_grade=scores[0]; else s_grade=scores[(grade-50)/10]; if(grade!=100) if(grade%107) s_grade+=+; else if(grade%103) s_grade+=-; couts_gradeendl; } } 5.6 #includeiostream #includevector #includestring using namespace std; const vectorstringscores={F,D,C,B,A,A++}; int grade; string s_grade; int main() { while(cingrade) { grade60?s_grade=scores[0]:s_grade=scores[(grade-50)/10]; if(grade!=100) (grade%10)7?s_grade+=+:(grade%103)?s_grade+=-:s_grade+= ; } } 5.7 (a)分号落了。(b)本意应该是要把if后面两句{}一下把 (c)i的作用域有问题 把第二个if改为else (d)=改成== ,要是=直接把if去掉好了。 5.8 If 比else多 C++规定else和最近的if匹配来解决 5.9 5.10 5.9已经考虑到大写了 5.11,5.12 #includeiostream #includevector #includestring using namespace std; unsigned int vowel_cnt,space_cnt,tab_cnt,enter_cnt,ff_cnt,fl_cnt,fi_cnt; char alphabet; vectorchartemp; int main() { while(cinalphabetalphabet!=999) { temp.push_back(alphabet); } for(unsigned int i=0;itemp.size();++i) { if(temp[i]==a||temp[i]==e||temp[i]==i||temp[i]==o||temp[i]==u||temp[i]==A||temp[i]==E||temp[i]==I||temp[i]==O||temp[i]==U) ++vowel_cnt; else if(temp[i]== ) ++space_cnt; else if(temp[i]==\t) ++tab_cnt; else if(temp[i]==\n) ++enter_cnt; else if(temp[i]==ftemp[i+1]==f) ++ff_cnt; else if(temp[i]==ftemp[i+1]==i) ++fi_cnt; else if(temp[i]==ftemp[i+1]==l) ++fl_cnt; else break; } coutvowel_cntendlspace_cntendltab_cntendlenter_cntendlff_cntendlfi_cntendlfl_cnt; } 以上代码 可以统计元音数量和fl,fi,ff的数量 但统计不了空格 换行 和制表符 原因是这些符号不会被存到向量中....囧,重点应该不能用whiel(in)感觉,因为输入流会跳过空格,换行,制表等。改成如下版本 可以满足要求. #include fstream #include iostream #include vector #include iomanip using namespace std; unsigned int vowel_cnt,space_cnt,tab_cnt,e

您可能关注的文档

文档评论(0)

haihang2017 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档