第5章函数
更新时间:2023-11-30 16:11:01 阅读量: 教育文库 文档下载
第5章 函数
练习题5
5.1 判断题
√ 1.函数的调用可以嵌套,函数的定义不能嵌套。
× 2.C++语言中,函数可以用原型说明,也可用简单说明。 × 3.定义函数时,存储类可以缺省,数据类型也可以省略。 × 4.函数可以没有参数,但是不能没有返回值。
× 5.函数定义时必须给出函数体,函数体内至少有一条语句。 √ 6.没有参数的两个函数是不能重载的。
√ 7.函数调用方式有传值调用和引用调用两种,传值调用中又分传值和传址两种。 √ 8.函数的存储类有外部的和静态的两种,它们的作用域分别是程序级的和文件级的。 × 9.没有返回值的函数不能设置为内联函数。
× 10.函数可以设置默认的参数值,默认参数值必须设置在函数定义时的形参上。 5.2 单选题
1.当一个函数没有返回值时,该函数类型应说明为( A )。 A.void B.int C.无 D.任意
2.下列关于设置函数默认的参数值的描述中,错误的是( C )。 A.可对函数的部分参数或全部参数设置默认值
B.在有函数说明时,默认值应设置在函数说明时,而不是定义时 C.设置函数默认参数值时,只可用常量不可用含有变量的表达式 D.设置函数参数默认值应从右向左设置
3.下列关于被调用函数中return语句的描述中,错误的是( D )。 A.一个函数中可以有多条return语句 B.return语句具有返回程序控制权的作用 C.函数通过return语句返回值时仅有一个 D.一个函数中有且仅有一条return语句 4.函数返回值的类型是由( B )决定的。 A.调用该函数的调用函数的类型 B.定义该函数时所指定的类型 C.return语句中表达式的类型
D.接收函数返回值的变量或对象的类型
5.下列设置函数参数默认值的说明语句中,错误的是( C )。 A.int fun(int x , int y=10); B.int fun(int x=5, int =10); C.int fun(int x=5, int y); D.int fun(int x , int y=a+b); (其中,a和b是已定义过具有有效值的变量)
6.下列选择重载函数的不同实现的判断条件中,错误的是( D )。 A.参数类型不同 B.参数个数不同 C.参数顺序不同 D.函数返回值不同
7.已知:int fun (int &a),m=10;下列调用fum()函数的语句中,正确的是( C )。
1
A.fun(&m); B.fun (m*2); C.fun (m); D.fun (m++);
8.在函数的引用调用中,函数的实参和形参分别应是( C )。 A.变量值和变量 B.地址值和指针 C.变量名和引用 D.地址值和引用
9.在函数的传址调用中,函数的实参和形参分别应是( B )。 A.变量值和变量 B.地址值和指针 C.变量名和引用 D.地址值和引用 10.说明一个内联函数时,应加关键字是( A )。
A.inline B.static C.void D.extern 5.3 填空题
1.如果将调用一个函数的过程分为3个步骤,第1步是 转去执行被调用函数 ,第2步是 执行被调用函数的语句 ,第3步是返回操作。
2.函数的存储类分两种,它们分别是 外部 函数和内部函数,其中 内部 函数的存储类说明不可省略,该说明符是 static 。
3.使用关键字inline说明的函数称为 内联 函数,具有相同函数名但具有不同实现的函数称为 重载 函数。
4.在调用一个函数过程中可以直接或间接地调用该函数,则该函数称为 被调用 函数。这种调用称为 嵌套 调用。
5.在引用调用中,函数实参用 变量名 ,形参用 引用名 。 5.4 分析下列程序的输出结果 1.
#include
int p(1),s(0); for(int i(1);i void main() { int s=fun(4); cout< 2. #include 2 void main() { for(int i(0);i<4;i++) fun(); } void fun() { int a(0); a++; static int b; b++; cout<<\ } 答: a=1,b=1 a=1,b=2 a=1,b=3 a=1,b=4 3. #include int s(0); for(int i(1);i<=5;i++) s+=fac(i); cout<<\ } int fac(int n) { static int b=1; b*=n; return b; } 答: 5!+4!+3!+2!+1!=153 4. #include char *p1,*p2; p1=\ p2=\ int n=fun(p1,p2); 3 cout< int fun(char *s1,char *s2) { while(*s1&&*s2&&*s1++= =*s2++) ; s1--; s2--; return *s1-*s2; } 答: 2 5. #include int a,b,c; fun(5,6,&a); fun(7,a,&b); fun(a,b,&c); cout< void fun(int i,int j,int *k) { j+=i; *k=j-i; } 答: 6,6,6 6. #include int a(8); cout<<\ cout<<\ cout<<\ } int add(int i,int j) { return i+j; } 答: sum1=13 4 sum2=21 sum3=29 7. #include int a(8),b(5); cout<<\ swap(a,b); cout<<\ } void swap(int &i,int &j) { int t; t=i; i=j; j=t; } 答: a=8,b=5 a=5,b=8 8. #include void print(int),print(char),print(char *); void main() { int a(800); print(a); print('a'); print(\ } void print(int i) { cout< void print(char i) { cout< void print(char *i) { cout< 5
正在阅读:
第5章函数11-30
十里河滩旅游资源调查评价 - 图文11-10
今年的和谐西湖 品质杭州 精彩西博10-23
智能电话的设计04-29
人教版七年级下学期第二次月考数学试卷(含答案解析)04-27
中国海峡人才市场人事委托代理人员 年度考核登记表(2012年)01-22
华富价值增长灵活配置混合型证券投资基金2009年第4季度报告08-25
桂林夜色小学生三年级优秀作文06-13
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 函数
- 苏教版小学数学五年级下册应用题
- 2018版高中化学 专题1 洁净安全的生存环境 第4单元 化学品的安全使用(第1课时)日用化学品的合
- 关于加强非公经济组织党建工作的几点思考
- 2017年高考数学(文)一轮复习精品资料:专题08+指数与指数函数(教学案)
- XX集团行政办公资产管理办法(修订3.16)
- 2015-2016年电子电工第二学期高三对口二模考试试卷2016.3.23
- 影视后期制作专业大学生的职业规划书
- 网络练习题
- 关于市(县)区工会组织状况的调研报告
- 中国邮政集团公司负责人邮政服务质量考核办法
- (135)中海地产-地区公司考核手册
- 中财各章练习题
- java基本数据类型习题(选择24)
- 秋季运动会广播稿
- 2007年平阳县中小学教师优秀教科研论文获奖名单
- 护林员先进事迹材料
- 沿滩区2009五年级单册综合试题 - 图文
- 最新整理冶金企业职业危害与预防之钢铁工业 docx
- 机械设计练习(一)(答案)
- KIS专业版V10.0迁移K3V12.0工具发布通告