C++编程:课后习题与switch语句详解
需积分: 9 22 浏览量
更新于2024-09-12
收藏 77KB DOC 举报
在C++编程的学习过程中,文档中包含了西南交大相关课程的课后习题解答,重点涉及数组操作、控制结构和函数应用。以下是部分习题详解:
1. 第三章课后习题中的第一个问题是关于条件判断与赋值操作。程序通过比较两个输入的整数a和b,根据条件改变变量c的值。如果a小于b且b小于0,c减去5;否则,c加5。对于输入20,-10,由于b(-10)小于0,所以c会先减去5得到8;对于输入-10,20,b不小于0,因此c加上5得到13。
2. 第二题要求编写一个程序,根据输入的正整数x确定其位数。这可以通过取对数或除以10并取整来实现,但C++中可以直接用`int digits = log10(x) + 1`来计算,因为`log10`会给出以10为底的对数,然后加1得到位数。
3. 在switch语句的例子中,对于第一段代码,当i等于9时,i自增1;接着i变为10,再自增1;然后i为11,再次自增1,执行完这些情况后,由于没有break,i会在default情况下再自增1,最终结果是12(B选项)。
4. 第二段代码中,case 11之后添加了break语句,所以在执行到case 11时跳出循环,因此变量i的最终结果是12(B选项)。
5. 第三段代码中,switch的执行顺序是:先执行default,再检查每个case。由于i初始值为9,所以case 9和case 10都不会执行,只有case 11和default会执行,结果是12(B选项)。
6. 第四段代码中,由于i的初始值为13,default和case 9不会执行,而case 10和case 11执行后,i自增两次,共加2,最终结果是15,但由于default已经执行过一次,所以总结果是17(D选项)。
关于switch语句的判断题,第1题错误,switch语句中可以有break语句;第2题错误,default语句可以放在任何位置,只要在所有case语句之前或之后;第3题正确,C++的switch语句必须包含至少一个case或default;第4题中,合法的整型case是B(case 2),因为不需要使用双等号(==);第5题合法的字符型case是B(case '3'),字符需要用单引号括起来。
最后,提到的函数要求编写的程序是输入一个x值,输出对应的y值。题目中给出了一个不完整的函数开始,包括头文件引用和变量声明,但没有给出函数体。为了正确输出y值,需要明确y与x的关系,可能是通过公式或逻辑运算得出,具体实现依赖于y与x之间的函数关系。例如,如果y是x的平方,可以写成`y = x * x;`。程序中还需要包含合适的输入和输出语句,如`cin >> x`和`cout << y << endl;`。
139 浏览量
2021-12-04 上传
2009-05-09 上传
421 浏览量
136 浏览量
142 浏览量

u010626908
- 粉丝: 0
最新资源
- 什么值得买PC客户端v1.0正式发布:网购性价比神器
- icontract:提升Python3合同式编程的违规消息与继承支持
- 全面解析Activity间对象传递的三种技术手段
- Python 3.5.2 Windows 64位安装包发布及中文手册下载
- MD风格SearchView开发教程及效果展示
- 海淘购物必备!运费计算器v1.0绿色免费版详解
- JavaScript源码分享:LaChouetteAgence项目解析
- Angular CLI在开发服务器中的应用与测试指南
- 掌握oracle sqluldr2快速导出工具高效使用
- 基于Servlet和JSP的分页管理演示系统
- 剑儿淘宝购物小助手v3.9:购物便利神器,返利省钱高效
- Java爬虫实现URL图片尺寸获取教程
- 宿舍记账管理:权限分角色与支出自动分摊系统
- 个人网站构建与维护指南:使用Next.js与TypeScript
- Java自学资源包:2020最新版教程及项目实践
- 阶梯电费计算器V2.0:绿色版免费软件解析电价政策