第35练 第7章 函数的返回值及其类型、函数调用时参数间的传递《C语言程序设计》(电子工业出版社)一课一练

| 2份
| 7页
| 50人阅读
| 0人下载

内容正文:

编写说明:考虑到中职学生普遍基础知识相对薄弱的情况,我们依据支架式教学理念,精心编制了《C语言程序设计》(电子工业出版社)一课一练。专辑里的每一份练习,都与课堂所授知识点紧密相关,题目围绕课堂所学知识点呈现。目的在于激发学生的学习兴趣,培养他们的学习自觉性,帮助学生扎实掌握课程的基本概念与基本方法,为他们后续的进一步提升奠定坚实基础。 本卷是《C语言程序设计》(电子工业出版社)一课一练的第7章的第35练,内容涵盖第7章函数的7.4~7.5.1 函数的返回值及其类型、函数调用时参数间的传递(变量 / 常量 / 数组元素)。 《C语言程序设计》(电子工业出版社)一课一练 第35练 第7章 函数 7.4~7.5.1 函数的返回值及其类型、函数调用时参数间的传递 1、 单项选择题(本题共4小题) 1、关于 C 语言的 return 语句,下列说法正确的是( ) A. 一个函数只能定义一个 return 语句 B. return 语句只能返回常量类型的值 C. return 语句的作用是将表达式的值返回给主调函数,同时结束当前函数的执行 D. 没有 return 语句的函数无法正常执行结束 【答案】C 【解析】函数中可以定义多个 return 语句,但每次调用只会执行其中一个;return 语句可以返回变量、表达式等任意合法值,不局限于常量;没有 return 语句的 void 类型函数,执行到函数末尾会自动结束,因此只有选项 C 的描述正确。 2、若函数定义为float calc() { return 10; },主调函数中执行int res = calc();,则变量 res 的值是( ) A. 10.0 B. 10 C. 编译报错 D. 不确定的随机值 【答案】B 【解析】函数返回值类型为 float,主调函数接收类型为 int,系统会自动将返回的浮点型 10 转换为整型 10,因此 res 的值为 10,不会出现编译错误。 3、关于 void 类型函数,下列说法正确的是( ) A. 可以在主调函数中使用该函数的返回值 B. 函数体中必须包含带表达式的 return 语句 C. 明确表示该函数不返回任何值 D. 函数定义时可以省略 void 类型说明 【答案】C 【解析】void 类型函数的核心作用是标识函数无返回值,主调函数不能使用其返回值;函数体中可以省略 return 语句,或仅使用不带表达式的return;;必须明确写 void 类型,不能省略,因此选项 C 正确。 4、C 语言中参数的 "值传递" 方式,其核心特点是( ) A. 实参和形参共用同一个内存存储单元 B. 形参的修改会直接影响主调函数中实参的值 C. 只能传递常量作为实参 D. 实参的值复制给形参,两者占用独立的内存单元 【答案】D 【解析】值传递是将实参的值复制到形参的独立内存单元中,形参的任何修改仅作用于自身,不会反向影响实参;实参可以是变量、常量、数组元素等多种类型。 2、 判断题(本题共3题) 1、一个函数中可以定义多个 return 语句,因此可以同时返回多个值给主调函数。( ) 【答案】× 【解析】虽然函数中可以存在多个 return 语句,但每次函数调用只会执行其中一个,因此只能返回一个值给主调函数,无法实现多值返回。 2、在值传递方式中,形参的取值是实参的副本,修改形参的值不会影响主调函数中实参的原始值。( ) 【答案】√ 【解析】值传递时实参和形参占用独立的内存单元,形参的修改仅作用于自身单元,不会反向传递给实参,保证了主调函数中变量的独立性。 3、所有 C 语言函数的返回值类型都必须明确声明,不能省略。( ) 【答案】× 【解析】如果函数的返回值为整型,在函数定义时可以省略类型说明,系统会默认该函数的返回值类型为 int。 3、 填空题(本题共2题) 1、C 语言中,当使用变量、常量或数组元素作为函数参数时,采用的传递方式是____,其传递方向为单向传递,即只能将实参的值传递给形参。 【答案】值传递 【解析】值传递是 C 语言最基础的参数传递方式,实参和形参各自占用独立的内存空间,避免了被调函数意外修改主调函数的变量。这种传递方式符合模块化设计的低耦合要求,保证了数据的安全性。 2、若函数不需要返回任何值,应将其定义为____类型,这样可以避免主调函数错误地使用该函数的返回值。 【答案】void(空类型) 【解析】void 类型明确标识函数无返回值,编译器会对主调函数中使用该函数返回值的操作报错,提高代码的可读性和规范性。定义为该类型的函数,函数体中可省略 return 语句,或仅使用不带表达式的return;提前结束函数。 4、 读程序写结果题(本题共1题) 1、阅读下面的 C 语言程序,写出程序运行后的输出结果。 【程序代码】 #include <stdio.h> void swap(int x, int y) { int temp = x; x = y; y = temp; } int main() { int a = 3, b = 5; swap(a, b); printf("a=%d, b=%d", a, b); return 0; } 【答案】 程序运行结果: a=3, b=5 【解析】 主函数调用 swap 函数时,采用值传递方式,将 a 的值 3、b 的值 5 分别复制给形参 x、y;swap 函数内部交换的是 x 和 y 的值,但 x、y 是独立于 a、b 的内存单元,修改不会影响主函数中的 a 和 b,因此输出 a 和 b 的原始值。 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $ 编写说明:考虑到中职学生普遍基础知识相对薄弱的情况,我们依据支架式教学理念,精心编制了《C语言程序设计》(电子工业出版社)一课一练。专辑里的每一份练习,都与课堂所授知识点紧密相关,题目围绕课堂所学知识点呈现。目的在于激发学生的学习兴趣,培养他们的学习自觉性,帮助学生扎实掌握课程的基本概念与基本方法,为他们后续的进一步提升奠定坚实基础。 本卷是《C语言程序设计》(电子工业出版社)一课一练的第7章的第35练,内容涵盖第7章函数的7.4~7.5.1 函数的返回值及其类型、函数调用时参数间的传递(变量 / 常量 / 数组元素)。 《C语言程序设计》(电子工业出版社)一课一练 第35练 第7章 函数 7.4~7.5.1 函数的返回值及其类型、函数调用时参数间的传递 1、 单项选择题(本题共4小题) 1、关于 C 语言的 return 语句,下列说法正确的是( ) A. 一个函数只能定义一个 return 语句 B. return 语句只能返回常量类型的值 C. return 语句的作用是将表达式的值返回给主调函数,同时结束当前函数的执行 D. 没有 return 语句的函数无法正常执行结束 2、若函数定义为float calc() { return 10; },主调函数中执行int res = calc();,则变量 res 的值是( ) A. 10.0 B. 10 C. 编译报错 D. 不确定的随机值 3、关于 void 类型函数,下列说法正确的是( ) A. 可以在主调函数中使用该函数的返回值 B. 函数体中必须包含带表达式的 return 语句 C. 明确表示该函数不返回任何值 D. 函数定义时可以省略 void 类型说明 4、C 语言中参数的 "值传递" 方式,其核心特点是( ) A. 实参和形参共用同一个内存存储单元 B. 形参的修改会直接影响主调函数中实参的值 C. 只能传递常量作为实参 D. 实参的值复制给形参,两者占用独立的内存单元 2、 判断题(本题共3题) 1、一个函数中可以定义多个 return 语句,因此可以同时返回多个值给主调函数。( ) 2、在值传递方式中,形参的取值是实参的副本,修改形参的值不会影响主调函数中实参的原始值。( ) 3、所有 C 语言函数的返回值类型都必须明确声明,不能省略。( ) 3、 填空题(本题共2题) 1、C 语言中,当使用变量、常量或数组元素作为函数参数时,采用的传递方式是____,其传递方向为单向传递,即只能将实参的值传递给形参。 2、若函数不需要返回任何值,应将其定义为____类型,这样可以避免主调函数错误地使用该函数的返回值。 4、 读程序写结果题(本题共1题) 1、阅读下面的 C 语言程序,写出程序运行后的输出结果。 【程序代码】 #include <stdio.h> void swap(int x, int y) { int temp = x; x = y; y = temp; } int main() { int a = 3, b = 5; swap(a, b); printf("a=%d, b=%d", a, b); return 0; } 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $

资源预览图

第35练 第7章 函数的返回值及其类型、函数调用时参数间的传递《C语言程序设计》(电子工业出版社)一课一练-第1页
1

由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。