第7练 第1章 宏定义和文件包含 《编程语言基础——C 语言》(高教版第五版) 一课一练

2025-10-20
| 2份
| 6页
| 91人阅读
| 2人下载

资源信息

学段 中职
学科 职教专业课
课程 C语言程序设计
教材版本 C语言程序设计高教版(第五版)全一册
年级 高一
章节 1.7 宏定义和文件包含
类型 作业-同步练
知识点 C语言概述
使用场景 同步教学
学年 2025-2026
地区(省份) 全国
地区(市) -
地区(区县) -
文件格式 ZIP
文件大小 130 KB
发布时间 2025-10-20
更新时间 2025-10-20
作者 爱学习的muller
品牌系列 上好课·一课一练
审核时间 2025-10-20
下载链接 https://m.zxxk.com/soft/54455078.html
价格 1.00储值(1储值=1元)
来源 学科网

内容正文:

编写说明:考虑到中职学生普遍基础知识相对薄弱的情况,我们依据支架式教学理念,精心编制了《编程语言基础——C语言》(高教版第五版) 一课一练。专辑里的每一份练习,都与课堂所授知识点紧密相关,题目围绕课堂所学知识点呈现。目的在于激发学生的学习兴趣,培养他们的学习自觉性,帮助学生扎实掌握课程的基本概念与基本方法,为他们后续的进一步提升奠定坚实基础。 本卷是《编程语言基础——C语言》(高教版第五版) 一课一练的第1章的第7练,内容涵盖第1章C语言概述的1.7 宏定义和文件包含 。 《编程语言基础——C语言》(高教版第五版) 第7练 第1章 C语言概述 1.7 宏定义和文件包含 1、 单项选择题(本题共5小题) 1、以下关于宏定义的说法,正确的是( ) A. 宏定义必须以分号结尾 B. 宏名与括号之间可以加空格 C. 宏名一般用大写字母表示 D. 宏定义只能是不带参数的 【答案】C 【解析】宏定义一般不以分号结尾(除非有特别需要),A 选项错误;宏名与括号之间加空格就会成为不带参数的宏定义,所以不能加空格,B 选项错误;宏定义有不带参数和带参数两种形式,D 选项错误;习惯上,宏名一般用大写字母表示,C 选项正确。 2、使用文件包含命令时,以下说法正确的是( ) A. “#include < 文件名>” 只能用于包含库函数的头文件 B. “#include “文件名”” 只能用于包含用户文件的头文件 C. “#include < 文件名 >” 系统会先在用户当前目录搜索文件 D. “#include “文件名”” 系统会先在系统指定路径搜索文件 【答案】A 【解析】“#include < 文件名 >” 时,C 编译系统将在系统指定的路径下搜索尖括号中的文件,一般适用于包含库函数的头文件,A 选项正确;“#include “文件名”” 系统首先会在用户当前的目录中搜索双引号中的文件,若找不到再按系统指定的路径搜索,既可以用于包含用户文件的头文件,也可以包含库函数头文件,B 选项错误;“#include < 文件名 >” 是直接在系统指定路径搜索文件,C 选项错误;“#include “文件名”” 是先在用户当前目录搜索文件,D 选项错误。 3、若有宏定义 “#define MAX (a,b) (a>b?a:b)”,则 “MAX (3,5)” 宏展开后为( ) A. 3 B. 5 C. (3>5?3:5) D. 3>5?3:5 【答案】C 【解析】根据带参数的宏展开原则,凡遇形参则以实参代替,非形参字符则原样保留,所以 “MAX (3,5)” 宏展开后为 “(3>5?3:5)”,选 C。 4、下面关于宏定义和文件包含的共同点,说法正确的是( ) A. 都属于 C 语句 B. 都必须以分号结尾 C. 都以 “#” 开头 D. 都用于实现程序的具体功能 【答案】C 【解析】宏定义和文件包含都属于编译预处理命令,以 “#” 开头,C 选项正确;它们都不属于 C 语句,A 选项错误;一般情况下都不以分号结尾(宏定义除非有特别需要),B 选项错误;它们的作用是给 C 语言编译系统提供信息,不是实现程序的具体功能,D 选项错误。 5、若有宏定义 “#define ADD (x,y) x+y”,执行 “int result = ADD (2,3) * 4;” 后,result 的值为( ) A. 20 B. 14 C. 24 D. 32 【答案】B 【解析】宏展开后 “int result = ADD (2,3) * 4;” 变为 “int result = 2+3 * 4;”,根据运算符优先级,先计算乘法再计算加法,结果为 2 + 12 = 14,选 B。 2、 判断题(本题共3题) 1、宏定义中的宏名只能用大写字母表示。( ) 【答案】× 【解析】习惯上符号常量名(宏名)用大写字母表示,但也可以用小写,只是前后必须一致,所以该说法错误。 2、“#include <stdio.h>” 和 “#include “stdio.h”” 的作用是完全一样的。( ) 【答案】× 【解析】“#include <stdio.h>” 系统会在系统指定的路径下搜索文件,“#include “stdio.h”” 系统首先会在用户当前的目录中搜索文件,若找不到再按系统指定的路径搜索,二者作用不同,所以该说法错误。 3、带参数的宏定义中,宏名与括号之间不能加空格。( ) 【答案】√ 【解析】如果宏名与括号之间加空格,就会成为不带参数的宏定义,所以该说法正确。 3、 读程序写结果题(本题共1小题) 1、以下程序运行时,会输出什么结果? #include <stdio.h> #define MULTIPLY(x,y) x*y int main() { int result = MULTIPLY(2 + 3, 4); printf("%d ", result); return 0; } 【答案】11 【解析】宏展开后 “int result = MULTIPLY (2 + 3, 4);” 变为 “int result = 2 + 3 * 4;”,根据运算符优先级,先计算乘法再计算加法,结果为 2 + 12 = 14,所以最终输出 14。 4、 程序设计题(本题共1小题) 1、编写一个程序,使用宏定义计算两个数的平方和。输入两个整数,输出它们的平方和。 【答案】 #include <stdio.h> #define SQUARE_SUM(x,y) (x)*(x)+(y)*(y) int main() { int a, b; printf("请输入两个整数:"); scanf("%d %d", &a, &b); int result = SQUARE_SUM(a, b); printf("这两个数的平方和是:%d ", result); return 0; } 【解析】首先使用宏定义 “#define SQUARE_SUM (x,y) (x)(x)+(y)(y)” 来计算两个数的平方和。在主函数中,提示用户输入两个整数,使用 scanf 函数获取用户输入的两个整数,然后调用宏定义计算平方和并将结果存储在 result 变量中,最后使用 printf 函数输出结果。 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $ 编写说明:考虑到中职学生普遍基础知识相对薄弱的情况,我们依据支架式教学理念,精心编制了《编程语言基础——C语言》(高教版第五版) 一课一练。专辑里的每一份练习,都与课堂所授知识点紧密相关,题目围绕课堂所学知识点呈现。目的在于激发学生的学习兴趣,培养他们的学习自觉性,帮助学生扎实掌握课程的基本概念与基本方法,为他们后续的进一步提升奠定坚实基础。 本卷是《编程语言基础——C语言》(高教版第五版) 一课一练的第1章的第7练,内容涵盖第1章C语言概述的1.7 宏定义和文件包含 。 《编程语言基础——C语言》(高教版第五版) 第7练 第1章 C语言概述 1.7 宏定义和文件包含 1、 单项选择题(本题共5小题) 1、以下关于宏定义的说法,正确的是( ) A. 宏定义必须以分号结尾 B. 宏名与括号之间可以加空格 C. 宏名一般用大写字母表示 D. 宏定义只能是不带参数的 2、使用文件包含命令时,以下说法正确的是( ) A. “#include < 文件名>” 只能用于包含库函数的头文件 B. “#include “文件名”” 只能用于包含用户文件的头文件 C. “#include < 文件名 >” 系统会先在用户当前目录搜索文件 D. “#include “文件名”” 系统会先在系统指定路径搜索文件 3、若有宏定义 “#define MAX (a,b) (a>b?a:b)”,则 “MAX (3,5)” 宏展开后为( ) A. 3 B. 5 C. (3>5?3:5) D. 3>5?3:5 4、下面关于宏定义和文件包含的共同点,说法正确的是( ) A. 都属于 C 语句 B. 都必须以分号结尾 C. 都以 “#” 开头 D. 都用于实现程序的具体功能 5、若有宏定义 “#define ADD (x,y) x+y”,执行 “int result = ADD (2,3) * 4;” 后,result 的值为( ) A. 20 B. 14 C. 24 D. 32 2、 判断题(本题共3题) 1、宏定义中的宏名只能用大写字母表示。( ) 2、“#include <stdio.h>” 和 “#include “stdio.h”” 的作用是完全一样的。( ) 3、带参数的宏定义中,宏名与括号之间不能加空格。( ) 3、 读程序写结果题(本题共1小题) 1、以下程序运行时,会输出什么结果? #include <stdio.h> #define MULTIPLY(x,y) x*y int main() { int result = MULTIPLY(2 + 3, 4); printf("%d ", result); return 0; } 4、 程序设计题(本题共1小题) 1、编写一个程序,使用宏定义计算两个数的平方和。输入两个整数,输出它们的平方和。 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $

资源预览图

第7练 第1章 宏定义和文件包含 《编程语言基础——C 语言》(高教版第五版) 一课一练
1
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。