第23练 6.1 函数的定义、参数与返回值 《C语言》 (第五版) 一课一练 (山东省)

2026-06-24
| 2份
| 10页
| 2人阅读
| 0人下载

资源信息

学段 中职
学科 职教专业课
课程 C语言程序设计
教材版本 -
年级 -
章节 -
类型 作业-同步练
知识点 C语言概述
使用场景 同步教学
学年 2026-2027
地区(省份) 山东省
地区(市) -
地区(区县) -
文件格式 ZIP
文件大小 107 KB
发布时间 2026-06-24
更新时间 2026-06-24
作者 xkw_068401954
品牌系列 上好课·一课一练
审核时间 2026-06-24
下载链接 https://m.zxxk.com/soft/58480030.html
价格 1.00储值(1储值=1元)
来源 学科网

内容正文:

【编写说明】依托三阶支架资源编写方案,《一课一练》明确基础层具象化支架定位,作为课堂同步配套资源,其内容与课堂教学深度绑定,并且精准匹配中职学生知识基础与学习特质,遵循“由浅入深、循序渐进”的认知规律,聚焦基础性与实效性核心,通过拆解知识点、简化认知难度,切实降低学习门槛,为后续知识巩固与能力提升筑牢根基,是优质课后作业首选。 本卷是《C语言》(第五版)《一课一练》第23练,内容是6.1 函数的定义、参数与返回值。 《C语言》(第五版)一课一练 第23练 6.1 函数的定义、参数与返回值 一、单选题 1. C语言中,函数定义的一般形式为( ) A. 类型名 函数名 { 函数体 } B. 函数名(参数) 类型名 { 函数体 } C. 类型名 函数名[参数列表] { 函数体 } D. 类型名 函数名(参数列表) { 函数体 } 2. 关于C语言函数的参数,下列说法正确的是( ) A. 形式参数在函数定义时就分配了内存空间 B. 形式参数在函数被调用时才分配内存空间 C. 形式参数和实际参数可以有不同的数量和类型 D. 函数可以没有参数列表括号,直接写函数体 3. 关于函数的返回值,以下说法正确的是( ) A. return语句可以返回一个表达式的计算结果 B. 一个函数通过return语句可以同时返回多个值 C. void类型的函数也可以使用return返回值 D. return语句后面的程序代码仍会继续执行 4. 已知以下函数定义: 【 】 max(int x, int y) { return x > y ? x : y; } 空白处应填入的类型说明符是( ) A. void(函数不需要返回值类型) B. float(比较结果可能为浮点型) C. int(返回值为整型数据) D. char(返回值类型无关紧要) 5. 已知函数定义 void swap(int a, int b) { int t=a; a=b; b=t; } 在main中调用 swap(x,y); 后,以下说法正确的是( ) A. x和y的值被成功交换 B. 编译器报错,因为swap没有返回值 C. a和b的值被交换,同时x和y也被交换 D. x和y的值保持不变,形参交换不影响实参 6. 关于C语言函数的定义,以下说法正确的是( ) A. 所有函数必须定义在main函数之前 B. 一个源文件中最多可定义一个函数 C. 函数不能嵌套定义,可以嵌套调用 D. 函数必须放在头文件中才能被调用 7. 已知函数定义 int fun(int n) { return n*n; } 调用 fun(3+2) 的返回值是( ) A. 25 B. 13 C. 5 D. 编译错误(实参必须是变量) 二、简答题 8. 以下程序的运行结果是【··】。 #include <stdio.h> int add(int a, int b) { return a + b; } main() { int m = 10, n = 20, result; result = add(m, n); printf("%d + %d = %d ", m, n, result); } 三、案例分析题 9. 以下程序的功能是定义一个函数计算两数中的较大值,然后在main函数中调用。请填空。 #include <stdio.h> int larger(【1】) { if (x > y) return x; else return y; } main() { int a, b; printf("请输入两个整数:"); scanf("%d%d", 【2】); printf("较大值=%d ", larger(【3】)); } 四、综合应用题 10. 编写一个C程序:定义一个函数 int power(int base, int exp),计算base的exp次方(即base^exp,exp为非负整数),并在main函数中从键盘输入底数和指数,调用该函数计算并输出结果。 示例:输入2和3,输出8(2的3次方=2×2×2)。 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $ 【编写说明】依托三阶支架资源编写方案,《一课一练》明确基础层具象化支架定位,作为课堂同步配套资源,其内容与课堂教学深度绑定,并且精准匹配中职学生知识基础与学习特质,遵循“由浅入深、循序渐进”的认知规律,聚焦基础性与实效性核心,通过拆解知识点、简化认知难度,切实降低学习门槛,为后续知识巩固与能力提升筑牢根基,是优质课后作业首选。 本卷是《C语言》(第五版)《一课一练》第23练,内容是6.1 函数的定义、参数与返回值。 《C语言》(第五版)一课一练 第23练 6.1 函数的定义、参数与返回值 一、单选题 1. C语言中,函数定义的一般形式为( ) A. 类型名 函数名 { 函数体 } B. 函数名(参数) 类型名 { 函数体 } C. 类型名 函数名[参数列表] { 函数体 } D. 类型名 函数名(参数列表) { 函数体 } 【答案】D 【解析】C语言函数定义的完整格式为:返回值类型 函数名(形式参数列表) { 声明部分; 执行语句; }。参数列表必须用圆括号括起来,不能使用花括号和方括号。类型名指定函数返回值的类型,如果函数不需要返回值则写void。 2. 关于C语言函数的参数,下列说法正确的是( ) A. 形式参数在函数定义时就分配了内存空间 B. 形式参数在函数被调用时才分配内存空间 C. 形式参数和实际参数可以有不同的数量和类型 D. 函数可以没有参数列表括号,直接写函数体 【答案】B 【解析】形式参数(形参)在函数定义时并不占用内存空间,当函数被调用时才分配临时内存,调用结束后释放。实际参数(实参)的数量和类型必须与形参一致。函数定义中参数列表的括号是必需的,无参数时也需要写空括号。 3. 关于函数的返回值,以下说法正确的是( ) A. return语句可以返回一个表达式的计算结果 B. 一个函数通过return语句可以同时返回多个值 C. void类型的函数也可以使用return返回值 D. return语句后面的程序代码仍会继续执行 【答案】A 【解析】return后面可以跟一个表达式,先将表达式求值再将结果返回给调用者。每个函数至多返回一个值(通过return),不能同时返回多个值。void类型的函数可以使用return(不带表达式)来提前退出,但不能return值。return执行后函数立即结束,后面的代码不会执行。 4. 已知以下函数定义: 【 】 max(int x, int y) { return x > y ? x : y; } 空白处应填入的类型说明符是( ) A. void(函数不需要返回值类型) B. float(比较结果可能为浮点型) C. int(返回值为整型数据) D. char(返回值类型无关紧要) 【答案】C 【解析】函数max的功能是返回两个整数中的较大值,返回值类型与参数类型一致为int。如果写void,则编译错误(void函数不能return值)。如果写float,返回值类型与return表达式类型不匹配,可能产生精度损失。类型说明符应与函数实际返回值的类型一致。 5. 已知函数定义 void swap(int a, int b) { int t=a; a=b; b=t; } 在main中调用 swap(x,y); 后,以下说法正确的是( ) A. x和y的值被成功交换 B. 编译器报错,因为swap没有返回值 C. a和b的值被交换,同时x和y也被交换 D. x和y的值保持不变,形参交换不影响实参 【答案】D 【解析】C语言函数参数传递采用"值传递"方式:调用时将实参的值复制给形参,函数内对形参的修改不会影响实参。swap函数交换的是局部变量a和b的值,实参x和y保持不变。要实现实参值的交换,需要通过指针传递变量的地址。 6. 关于C语言函数的定义,以下说法正确的是( ) A. 所有函数必须定义在main函数之前 B. 一个源文件中最多可定义一个函数 C. 函数不能嵌套定义,可以嵌套调用 D. 函数必须放在头文件中才能被调用 【答案】C 【解析】C语言中不能在函数体内再定义函数(不能嵌套定义),程序中的每个函数都是独立定义的。函数之间可以相互调用(可以嵌套调用)。函数可以定义在main之前、之后(需要声明),也可以定义在其他源文件中。函数不一定必须放在头文件中。 7. 已知函数定义 int fun(int n) { return n*n; } 调用 fun(3+2) 的返回值是( ) A. 25 B. 13 C. 5 D. 编译错误(实参必须是变量) 【答案】A 【解析】实参可以是常量,也可以是变量,还可以是表达式。调用fun(3+2)时,先计算表达式3+2=5,然后将值5传递给形参n,函数体内计算n*n=5*5=25并返回。表达式作为实参是合法的C语言用法,功能由编译器先求值再传参,方便编写更灵活的代码。 二、简答题 8. 以下程序的运行结果是【··】。 #include <stdio.h> int add(int a, int b) { return a + b; } main() { int m = 10, n = 20, result; result = add(m, n); printf("%d + %d = %d ", m, n, result); } 【答案】10 + 20 = 30 【解析】自定义函数add接收两个整型参数,返回它们的和。main中调用add(m,n)即add(10,20),返回值30赋给result。printf输出时依次输出m的值10、加号字符、n的值20、等号字符、result的值30,最终在屏幕上显示"10 + 20 = 30"。 三、案例分析题 9. 以下程序的功能是定义一个函数计算两数中的较大值,然后在main函数中调用。请填空。 #include <stdio.h> int larger(【1】) { if (x > y) return x; else return y; } main() { int a, b; printf("请输入两个整数:"); scanf("%d%d", 【2】); printf("较大值=%d ", larger(【3】)); } 【答案】【1】int x, int y 【2】&a, &b 【3】a, b 【解析】第一空填写形参定义int x,int y,指明函数接收两个整型参数。第二空scanf读取两个整数存入a和b的地址。第三空调用larger(a,b)将a和b作为实参传入函数,函数比较后返回较大值,由printf输出。该程序展示了函数定义、参数传递和调用的完整流程。 四、综合应用题 10. 编写一个C程序:定义一个函数 int power(int base, int exp),计算base的exp次方(即base^exp,exp为非负整数),并在main函数中从键盘输入底数和指数,调用该函数计算并输出结果。 示例:输入2和3,输出8(2的3次方=2×2×2)。 【答案】#include <stdio.h> int power(int base, int exp) { int result = 1, i; for (i = 0; i < exp; i++) result = result * base; return result; } main() { int b, e; printf("请输入底数和指数(非负整数):"); scanf("%d%d", &b, &e); printf("%d的%d次方=%d ", b, e, power(b, e)); } 【解析】power函数接收底数base和指数exp两个参数,用循环累乘实现幂运算:result从1开始,每次乘以base,循环exp次后得到结果。例如power(2,3):result=1→乘2得2→乘2得4→乘2得8,返回8。main函数中scanf读取输入后直接调用power并输出结果。 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $

资源预览图

第23练 6.1 函数的定义、参数与返回值 《C语言》 (第五版) 一课一练 (山东省)
1
第23练 6.1 函数的定义、参数与返回值 《C语言》 (第五版) 一课一练 (山东省)
2
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。