- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第四章函数与程序结构
一、填空题
函数的返回值是通过函数中的 语句获得的,因此,当函数有返回值时,函数体内要有该语句。
根据变量定义位置的不同,可分为 和 。
一个程序将操作系统分配给其运行的内存块分为 、 、 和栈区。
C++提供的编译预处理功能主要有以下3种: 、 及条件编译命令。
递归调用的执行过程分为 和 。二、简答题
函数的返回类型有几种?它们的含义和使用方法是什么?
C++中参数传递机制有几种?分别简述这些机制。
标识符作用域的分类,并简述这些分类。
内联函数的概念是什么?为什么要引入内联函数?
什么是函数重载,并简述重载函数的目的以及参数满足的条件。
简述重载函数的匹配顺序。三、编程题
编写一个函数统计任意一个字符串中字母、数字、其他字符出现的频率。
设有10名学生3门考试课,编写一函数输出平均分不及格的学生。
编程实现用弦截法求方程x3-5x2+16x-80=0在区间[2,6]内的根。
使用函数重载的方法,设计两个求面积函数。
假设某企业有:
①财务管理;
②工程管理;
③市场管理;
三方面管理事务,开发具有菜单功能的程序框架,实现选择这三方面的管理。具体管理内容此处不予考虑。
参考答案
一、填空
return
局部变量 全局变量
代码区 全局数据区 堆区
宏定义命令文件包含命令
递推过程 回归过程二、简答题
1.答:函数的返回值有下面几种情形:
返回void类型
如果函数无值返回,应说明为void类型。例如:
voidprint(){cout″HelloWorld!″};
voidshow(){cout″WonderfulC++!″};
函数仅需完成打印和显示工作,不需返回任何数据,这类函数调用一般形成一个函数调用语句。未作类型说明的函数,系统认为是int类型函数,应返回一整型值。
返回数值类型
最常见的函数是返回一个数值的函数。例如:
intadd(inta,intb);floatcuberoot(floatx);
这类函数的调用表达式可以出现在表达式语句中。当函数要返回的数值不止一个时,情况比较复杂,一般它可以以结构或类的形式,也可以以结构,数组或对象指针类型方式实现。
返回引用类型
C++语言提供的引用返回概念是其特有的一种很强的功能,当函数定义中把该函数说明为某类型的引用类型时,该函数调用后返回的不单是值,而是包含返回值的变量(或对象)。2.答:参数传递机制有值调用和引用调用
(1)值调用
值调用实参与形参的结合过程:调用函数时,系统为形式参数分配新的存储单元,将实参的值赋给形参后,被调函数中的操作是在形参的存储单元中进行的,当函数调用结束时释放形参所占的存储单元。因此,在函数中对形参值的任何修改都不会影响到实参的值。
(2)引用调用
引用是指在程序中为一个变量取一个别名,以便在不同的情况下使用,对引用的操作也就是对目标变量的操作,他们代表着同一存储单元。因此,当形参被定义为引用类型,则对形参的任何操作都意味着对相应实参的操作,实参的值将随函数体内对形参的改变而改变。3.答:标识符作用域共分成块作用域、文件作用域、函数声明(原型)作用域、函数作用域、类作用域五种。
块作用域
块是用花括号括起来的一段程序。在块内说明的变量具有块作用域,其作用域是从变量说明处到块的结束处(即块的右花括号处)。
文件作用域
文件作用域也称全局作用域,定义在所有函数之外的标识符,具有文件作用域,作用域为从定义处到整个源文件结束。文件中定义的全局变量和函数都具有文件作用域。
函数声明作用域
在进行函数声明时,形参作用域只在声明中,即作用域结束于右括号。正是由于形参不能被程序的其他地方引用,所以通常只要声明形参个数和类型,形参名可省略。
函数作用域
函数中定义的变量,包括形参和函数体中定义的局部变量,作用域都在该函数内,也称作函数域。
类作用域
类作用域是指类定义范围(包括类的声明部分和相应成员函数实现整个范围)。在该范围内,类的成员函数对数据成员有无限访问权限。
答:内联函数也称为内嵌函数,在使用内联函数时,C++编译器用函数体中的代码插入到调用该函数的语句之处,在程序运行时不再进行函数调用,从而消除函数调用时的系统开销,提高程序执行效率。
函数的使用可以减少程序的目标代码,实现程序代码共享,为编程带来方便。但在程序
执行过程中调用函数时,系统要将程序当前的一些状态信息保存到堆栈中,同时转到被调函数的代码处去执行函数体语句,这些参数保存与传递的过程中系统需要时间和空间的开销,使程序执行效率降低。特别是对于那些代码较短而又频繁调用的函数,这个问题尤为严重。为了解决这一问题,C++引入了内联函数。
答:在C++中,两个或两个以上的函数可以重名,但要求函
您可能关注的文档
- 初一英语作文My best friend.docx
- 初中八九年级物理作图大全.docx
- 初中常用相对原子质量表.docx
- 初中地理气候类型表格.docx
- 初中电学总复习.docx
- 初中复合句练习.docx
- 初中化学最终总结版.docx
- 初中教师教学工作总结.docx
- 初中七年级地理第一章练习题.docx
- 初中物理效率计算专题.docx
- 重庆新速达物业服务集团股份凯里公司招聘笔试题库2024.pdf
- 浙江杭州千岛湖泰众肉类食品有限公司招聘笔试题库2024.pdf
- 陕西新华出版传媒集团新华书店分公司招聘笔试题库2024.pdf
- 宁夏海原县肉牛产业发展集团有限公司招聘笔试题库2024.pdf
- 浙江温岭市化工轻工建筑材料有限公司招聘笔试题库2024.pdf
- 中航飞机汉中航空零组件制造有限公司招聘笔试题库2024.pdf
- 山东海阳市海昇矿产资源开发有限公司招聘笔试题库2024.pdf
- 山东潍坊寿光市公共交通运输有限公司招聘笔试题库2024.pdf
- 内蒙古察右前旗农业投资开发有限公司招聘笔试题库2024.pdf
- 线上清明祭英烈活动策划.pptx
文档评论(0)