单元3 身高体型判定系统的数据处理(3.输入输出及项目实施)(练习)-《C语言程序设计》(高教版第2版)【上好课】

2026-05-14
| 2份
| 13页
| 21人阅读
| 0人下载

资源信息

学段 中职
学科 职教专业课
课程 C语言程序设计
教材版本 -
年级 -
章节 -
类型 作业-同步练
知识点 数据类型和简单程序设计
使用场景 同步教学
学年 2026-2027
地区(省份) 全国
地区(市) -
地区(区县) -
文件格式 ZIP
文件大小 217 KB
发布时间 2026-05-14
更新时间 2026-05-14
作者 爱学习的muller
品牌系列 上好课·上好课
审核时间 2026-05-14
下载链接 https://m.zxxk.com/soft/57845781.html
价格 2.00储值(1储值=1元)
来源 学科网

内容正文:

身高体型判定系统的数据处理(3.输入输出及项目实施) 一、单项选择题 1、执行int a=-1; printf("%u", a);语句,在 Visual C++ 环境中的输出结果是( ) A. -1 B. 1 C. 4294967295 D. 编译错误 2、以下 scanf 语句中,能正确给整型变量 a 输入数据的是( ) A. scanf ("% d", a); B. scanf ("% d", &a); C. scanf ("% f", &a); D. scanf ("% u", a); 3、执行float pi=3.1415926; printf("%.2f", pi);语句,输出结果是( ) A. 3.141593 B. 3.14 C. 3.1416 D. 3.1415926 4、以下关于 putchar 函数的描述,正确的是( ) A. 一次可以输出多个字符 B. 参数只能是字符型变量 C. 参数可以是字符常量或整型变量(对应 ASCII 码) D. 需要包含头文件math.h 5、执行int a,b; scanf("%d*%d", &a, &b);语句,若输入10*20,则变量 a 和 b 的值分别是( ) A. 10,20 B. 10,10 C. 20,10 D. 编译错误 6、执行int num=123; printf("%-5d*", num);语句,输出结果是( ) A. 123* B. 123 * C. 0123* D. 123* 7、关于 getchar 函数,以下说法正确的是( ) A. 函数有一个参数 B. 读取输入时会自动跳过空格和换行符 C. 返回值是读取到的字符的 ASCII 码值 D. 只能读取数字字符 8、以下 printf 语句中,格式符与输出项不匹配的是( ) A. printf ("% c", 'A'); B. printf ("% s", "Hello"); C. printf ("% d", 3.14); D. printf ("% f", 3.14); 9、输入双精度浮点数时,scanf 应使用的格式符是( ) A. % f B. % lf C. % d D. % e 10、执行float x=314.159; printf("%g", x);语句,输出结果是( ) A. 314.159 B. 3.14159e+02 C. 314.16 D. 314 二、判断题 1、使用 scanf 输入变量时,所有变量前都必须加取地址运算符&。( ) 2、printf 的格式控制字符串中,格式符的数量少于输出项数量时,多出的输出项不会被输出。( ) 3、getchar 函数只能读取字母字符,无法读取数字字符和符号。( ) 4、printf 输出字符串时,必须使用格式符%s,且输出项为字符串常量或字符数组名。( ) 3、 填空题 1、在 printf 中输出%本身,需要使用的格式声明是____。 2、使用 scanf 输入单个字符时,对应的格式符是____。 3、putchar 函数的参数可以是字符常量、字符变量或____(填数据类型)。 4、使用 C 语言标准库中的平方根函数 sqrt () 时,需要在程序开头包含的头文件是____。 5、printf 中指定输出实型数据保留 3 位小数的格式声明是____。 四、程序填空题 1、题目描述:以下程序用于实现身高预测系统,输入父母身高和孩子性别,根据公式计算并输出孩子的预测身高,需补充缺失代码。 #include <stdio.h> int main() { float father, mother, predict; char gender; printf("请输入父亲身高(cm):"); // 读取父亲身高 ___(1)_; printf("请输入母亲身高(cm):"); // 读取母亲身高 __(2)__; printf("请输入孩子性别(M/m表示男,F/f表示女):"); // 读取孩子性别,跳过输入缓冲区的换行符 __(3) __; if(gender == 'M' || gender == 'm') { // 男孩身高公式:(父亲身高+母亲身高)*1.08/2 predict = __(4) __; } else if(gender == 'F' || gender == 'f') { // 女孩身高公式:(父亲身高+0.923*母亲身高)/2 predict = __(5)__; } else { printf("性别输入错误! "); return 1; } // (6) 保留2位小数输出预测身高 printf("孩子的预测身高为:____ cm ", predict); return 0; } 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $ 身高体型判定系统的数据处理(3.输入输出及项目实施) 一、单项选择题 1、执行int a=-1; printf("%u", a);语句,在 Visual C++ 环境中的输出结果是( ) A. -1 B. 1 C. 4294967295 D. 编译错误 【答案】C 【解析】%u是无符号十进制整数格式符,当输入负数时,会将其以补码形式转换为无符号整数,-1 的 32 位补码是全 1,对应无符号整数 4294967295,因此输出该值。 2、以下 scanf 语句中,能正确给整型变量 a 输入数据的是( ) A. scanf ("% d", a); B. scanf ("% d", &a); C. scanf ("% f", &a); D. scanf ("% u", a); 【答案】B 【解析】scanf 的输入项必须是变量的地址,需用取地址运算符&获取变量 a 的内存地址;选项 A 缺少&,选项 C 格式符%f对应浮点型,选项 D 格式符%u对应无符号整型且缺少&,只有选项 B 符合语法。 3、执行float pi=3.1415926; printf("%.2f", pi);语句,输出结果是( ) A. 3.141593 B. 3.14 C. 3.1416 D. 3.1415926 【答案】B 【解析】.n修饰符用于指定实型数据的小数位数,%.2f表示保留 2 位小数,系统会自动对第三位四舍五入,因此输出 3.14。 4、以下关于 putchar 函数的描述,正确的是( ) A. 一次可以输出多个字符 B. 参数只能是字符型变量 C. 参数可以是字符常量或整型变量(对应 ASCII 码) D. 需要包含头文件math.h 【答案】C 【解析】putchar 一次只能输出一个字符,参数可以是字符常量、字符变量或对应 ASCII 码的整型变量;选项 A 错误,选项 B 限制过严,选项 D 错误,putchar 属于 stdio.h 库函数。 5、执行int a,b; scanf("%d*%d", &a, &b);语句,若输入10*20,则变量 a 和 b 的值分别是( ) A. 10,20 B. 10,10 C. 20,10 D. 编译错误 【答案】A 【解析】scanf 的格式控制字符串中,*表示跳过对应输入项,输入10*20时,%d读取 10 赋值给 a,*跳过*,第二个%d读取 20 赋值给 b,因此 a=10,b=20。 6、执行int num=123; printf("%-5d*", num);语句,输出结果是( ) A. 123* B. 123 * C. 0123* D. 123* 【答案】B 【解析】%-5d表示左对齐且占 5 个字符宽度,num=123 占 3 个字符,因此右侧补 2 个空格,输出为123 *。 7、关于 getchar 函数,以下说法正确的是( ) A. 函数有一个参数 B. 读取输入时会自动跳过空格和换行符 C. 返回值是读取到的字符的 ASCII 码值 D. 只能读取数字字符 【答案】C 【解析】getchar 无参数,读取时会包含空格、换行符等所有字符,返回值是字符对应的 ASCII 码,可赋值给字符或整型变量;选项 A、B、D 均错误。 8、以下 printf 语句中,格式符与输出项不匹配的是( ) A. printf ("% c", 'A'); B. printf ("% s", "Hello"); C. printf ("% d", 3.14); D. printf ("% f", 3.14); 【答案】C 【解析】%d是整型格式符,输出项 3.14 是浮点型,格式不匹配会导致输出错误结果;其他选项格式符与输出项类型一致。 9、输入双精度浮点数时,scanf 应使用的格式符是( ) A. % f B. % lf C. % d D. % e 【答案】B 【解析】%lf用于输入双精度(double)浮点数,%f用于输入单精度(float)浮点数,%d对应整型,%e用于指数形式输入浮点数但需配合 double 使用%le,因此选项 B 正确。 10、执行float x=314.159; printf("%g", x);语句,输出结果是( ) A. 314.159 B. 3.14159e+02 C. 314.16 D. 314 【答案】A 【解析】%g会自动选择%f或%e中宽度更小的格式,且不输出无意义的 0,314.159 用%f格式更短,因此输出原数。 二、判断题 1、使用 scanf 输入变量时,所有变量前都必须加取地址运算符&。( ) 【答案】× 【解析】数组名本身代表数组的首地址,输入数组时不需要加&,例如scanf("%s", str);(str 是字符数组名)是合法的,因此该表述错误。 2、printf 的格式控制字符串中,格式符的数量少于输出项数量时,多出的输出项不会被输出。( ) 【答案】√ 【解析】printf 要求格式符与输出项一一对应,若输出项数量多于格式符,超出部分的输出项不会被处理和输出,符合函数的执行规则。 3、getchar 函数只能读取字母字符,无法读取数字字符和符号。( ) 【答案】× 【解析】getchar 可以读取键盘输入的任意字符,包括数字、符号、空格等,读取的是字符的 ASCII 码值,后续可通过类型转换转为整型数字,因此表述错误。 4、printf 输出字符串时,必须使用格式符%s,且输出项为字符串常量或字符数组名。( ) 【答案】√ 【解析】%s是 printf 专用于输出字符串的格式符,输出项需指向字符串的首地址,字符串常量和字符数组名都符合要求,该表述正确。 3、 填空题 1、在 printf 中输出%本身,需要使用的格式声明是____。 【答案】%% 【解析】%是格式声明的起始符,若要输出%,需连续写两个%,系统会将其解析为普通字符%输出,这是 printf 的特殊语法规则。 2、使用 scanf 输入单个字符时,对应的格式符是____。 【答案】% c 【解析】%c是 scanf 用于读取单个字符的格式符,可读取包括空格、换行符在内的任意单个字符,是字符输入的核心格式符。 3、putchar 函数的参数可以是字符常量、字符变量或____(填数据类型)。 【答案】整型变量 【解析】字符在内存中以 ASCII 码存储,因此 putchar 的参数可以是对应 ASCII 码的整型变量,例如putchar(65);会输出字符 'A'。 4、使用 C 语言标准库中的平方根函数 sqrt () 时,需要在程序开头包含的头文件是____。 【答案】math.h 【解析】sqrt () 属于数学函数库,所有数学库函数的声明都在math.h头文件中,使用前必须通过#include <math.h>引入。 5、printf 中指定输出实型数据保留 3 位小数的格式声明是____。 【答案】%.3f 【解析】.n修饰符用于指定实型数据的小数位数,%.3f表示以小数形式输出浮点数,并保留 3 位小数,系统会自动对第四位四舍五入。 四、程序填空题 1、题目描述:以下程序用于实现身高预测系统,输入父母身高和孩子性别,根据公式计算并输出孩子的预测身高,需补充缺失代码。 #include <stdio.h> int main() { float father, mother, predict; char gender; printf("请输入父亲身高(cm):"); // 读取父亲身高 ___(1)_; printf("请输入母亲身高(cm):"); // 读取母亲身高 __(2)__; printf("请输入孩子性别(M/m表示男,F/f表示女):"); // 读取孩子性别,跳过输入缓冲区的换行符 __(3) __; if(gender == 'M' || gender == 'm') { // 男孩身高公式:(父亲身高+母亲身高)*1.08/2 predict = __(4) __; } else if(gender == 'F' || gender == 'f') { // 女孩身高公式:(父亲身高+0.923*母亲身高)/2 predict = __(5)__; } else { printf("性别输入错误! "); return 1; } // (6) 保留2位小数输出预测身高 printf("孩子的预测身高为:____ cm ", predict); return 0; } 【答案】 (1)scanf ("% f", &father); (2) scanf ("% f", &mother); (3) scanf ("% c", &gender); (4) (father + mother) * 1.08 / 2; (5) (father + 0.923 * mother) / 2; (6):%.2f 【解析】 (1) 使用%f格式符读取浮点型的父亲身高,&father获取变量的内存地址,符合 scanf 的输入规则。 (2) 同理,用%f读取母亲身高,确保输入数据存储到对应的浮点型变量中。 (3) scanf(" %c", &gender)中的空格用于跳过输入缓冲区中之前输入留下的换行符,避免读取到无效的换行字符。 (4) 严格按照题目给定的男孩身高公式编写表达式,保证计算逻辑的准确性。 (5) 代入女孩身高公式进行计算,确保预测结果符合遗传身高的统计规律。 (6) %.2f格式符用于将预测身高保留 2 位小数输出,提升结果的可读性和规范性。 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $

资源预览图

单元3 身高体型判定系统的数据处理(3.输入输出及项目实施)(练习)-《C语言程序设计》(高教版第2版)【上好课】
1
单元3 身高体型判定系统的数据处理(3.输入输出及项目实施)(练习)-《C语言程序设计》(高教版第2版)【上好课】
2
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。