内容正文:
编写说明:2027版山东省春季高考统一考试软件与应用技术类《考纲百套卷》,依据《软件与应用技术类专业知识考试标准》编写。本专辑涵盖三个部分,第一部分为知识训练卷,第二部分为专题训练卷,第三部分为课程综合卷。本专辑共85份试卷,其中知识训练卷48份、专题训练卷25份、课程综合卷12份。
本试卷是第2卷,为知识训练卷,按《C语言程序设计知识》中“赋值与输入输出及表达式”范围和要求编写。具体内容为:(3)掌握赋值语句以及数据输入、输出语句的用法。(4)理解运算符、表达式及常用函数的用法。
山东省春季高考统一考试
软件与应用技术类《考纲百套卷》
第2卷 C语言程序设计知识——赋值与输入输出及表达式
(考试时间:45分钟 满分:100分)
一、选择题(共20题,每题3分,共60分)
1.下列语句中,能把计算结果保存到变量total中的是( )
A.total = price * quantity;
B.price * quantity = total;
C.total == price * quantity;
D.total price * quantity;
2.已知int x = 5;,执行x += 3;后,x的值是( )
A.2
B.53
C.8
D.15
3.输入一个int型变量score时,正确的scanf语句是( )
A.scanf("%lf", &score);
B.scanf("%d", score);
C.scanf("%f", &score);
D.scanf("%d", &score);
4.输入一个double型变量price时,应使用的转换说明符是( )
A.%d
B.%lf
C.%c
D.%f
5.下列printf语句中,格式说明符与数据类型匹配的是( )
A.printf("%d %c
", 8, 2.5);
B.printf("%c %d
", 8, 2.5);
C.printf("%f %d
", 8, 2.5);
D.printf("%d %.1f
", 8, 2.5);
6.下列语句中,输出字符A的是( )
A.printf("%d
", 'A');
B.printf("%s
", 'A');
C.printf("%c
", 'A');
D.printf("%f
", 'A');
7.执行int a = 7, b = 2;后,表达式a / b的值是( )
A.2.5
B.2
C.4
D.3
8.执行int a = 17, b = 5;后,表达式a % b的值是( )
A.4
B.1
C.2
D.3
9.表达式2 + 3 * 4的值是( )
A.14
B.20
C.9
D.24
10.表达式(2 + 3) * 4的值是( )
A.14
B.20
C.24
D.9
11.执行int x = 5; int y = x++;后,x和y的值分别是( )
A.5和6
B.6和6
C.5和5
D.6和5
12.执行int x = 10; x %= 3;后,x的值是( )
A.1
B.0
C.3
D.10
13.关于scanf函数返回值的说法正确的是( )
A.始终等于0
B.通常表示成功赋值的数据项个数
C.表示输出字符的个数
D.表示最后输入的整数值
14.printf("%.2f", 3.14159);输出的结果是( )
A.3.1
B.3
C.3.14
D.3.14159
15.函数abs(-8)的返回值是( )
A.8
B.无法确定
C.0
D.-8
16.函数sqrt(49.0)的返回值通常是( )
A.6.5
B.8.0
C.6.0
D.7.0
17.函数pow(2.0, 3.0)的返回值通常是( )
A.6.0
B.9.0
C.8.0
D.5.0
18.函数fabs(-2.5)的返回值是( )
A.5.0
B.2.5
C.0.0
D.-2.5
19.已知int x = 5;,一元负号表达式-x的值是( )
A.-6
B.5
C.0
D.-5
20.执行int a, b; a = b = 4;后,a和b的值分别是( )
A.4和4
B.4和0
C.0和4
D.未定义
二、简答题(共2题,每题10分,共20分)
1.阅读程序,写出程序的输出结果。
#include <stdio.h>
int main( )
{
int quantity = 3;
double price = 12.5;
double total = price * quantity;
printf("%d %.1f
", quantity, total);
return 0;
}
2.阅读程序,写出程序的输出结果。
#include <stdio.h>
int main( )
{
int x = 17;
int quotient = x / 5;
int remainder = x % 5;
quotient += 1;
remainder *= 2;
printf("%d %d
", quotient, remainder);
return 0;
}
三、案例分析题(共1题,共10分)
1.下面程序用于计算两个整数的平均值,但有一处错误,请指出并改正,使程序能够正确输出平均值。
代码如下:
#include <stdio.h>
int main( )
{
int a = 88;
int b = 91;
double average = (a + b) / 2;
printf("%.1f
", average);
return 0;
}
四、综合应用题(共1题,共10分)
1.编写程序:输入两个整数a和b,计算并输出a与b的差的绝对值。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$
编写说明:2027版山东省春季高考统一考试软件与应用技术类《考纲百套卷》,依据《软件与应用技术类专业知识考试标准》编写。本专辑涵盖三个部分,第一部分为知识训练卷,第二部分为专题训练卷,第三部分为课程综合卷。本专辑共85份试卷,其中知识训练卷48份、专题训练卷25份、课程综合卷12份。
本试卷是第2卷,为知识训练卷,按《C语言程序设计知识》中“赋值与输入输出及表达式”范围和要求编写。具体内容为:(3)掌握赋值语句以及数据输入、输出语句的用法。(4)理解运算符、表达式及常用函数的用法。
山东省春季高考统一考试
软件与应用技术类《考纲百套卷》
第2卷 C语言程序设计知识——赋值与输入输出及表达式
(考试时间:45分钟 满分:100分)
一、选择题(共20题,每题3分,共60分)
1.下列语句中,能把计算结果保存到变量total中的是( )
A.total = price * quantity;
B.price * quantity = total;
C.total == price * quantity;
D.total price * quantity;
【答案】A
【解析】赋值语句左侧应是接收结果的变量,右侧可以是表达式,因此应写total = price * quantity;。
2.已知int x = 5;,执行x += 3;后,x的值是( )
A.2
B.53
C.8
D.15
【答案】C
【解析】x += 3等价于x = x + 3,x由5变为8。
3.输入一个int型变量score时,正确的scanf语句是( )
A.scanf("%lf", &score);
B.scanf("%d", score);
C.scanf("%f", &score);
D.scanf("%d", &score);
【答案】D
【解析】score是int型,scanf应使用%d,并传入变量地址&score。
4.输入一个double型变量price时,应使用的转换说明符是( )
A.%d
B.%lf
C.%c
D.%f
【答案】B
【解析】scanf读取double型数据时使用%lf;%d用于int,%c用于字符,%f通常用于float。
5.下列printf语句中,格式说明符与数据类型匹配的是( )
A.printf("%d %c
", 8, 2.5);
B.printf("%c %d
", 8, 2.5);
C.printf("%f %d
", 8, 2.5);
D.printf("%d %.1f
", 8, 2.5);
【答案】D
【解析】整数8对应%d,实数2.5对应%.1f,格式说明符与数据类型匹配。
6.下列语句中,输出字符A的是( )
A.printf("%d
", 'A');
B.printf("%s
", 'A');
C.printf("%c
", 'A');
D.printf("%f
", 'A');
【答案】C
【解析】字符常量'A'使用%c输出,printf("%c
", 'A');可以输出字符A。
7.执行int a = 7, b = 2;后,表达式a / b的值是( )
A.2.5
B.2
C.4
D.3
【答案】B
【解析】a和b都是int型,整数相除只保留整数部分,7/2的结果为2。
8.执行int a = 17, b = 5;后,表达式a % b的值是( )
A.4
B.1
C.2
D.3
【答案】C
【解析】%是求余运算符,17除以5的余数为2。
9.表达式2 + 3 * 4的值是( )
A.14
B.20
C.9
D.24
【答案】A
【解析】乘法优先于加法,先计算3*4得到12,再加2,结果为14。
10.表达式(2 + 3) * 4的值是( )
A.14
B.20
C.24
D.9
【答案】B
【解析】括号优先计算2+3得到5,再乘4,结果为20。
11.执行int x = 5; int y = x++;后,x和y的值分别是( )
A.5和6
B.6和6
C.5和5
D.6和5
【答案】D
【解析】后缀自增先使用x原值给y赋值,再使x增加1,因此x为6、y为5。
12.执行int x = 10; x %= 3;后,x的值是( )
A.1
B.0
C.3
D.10
【答案】A
【解析】x %= 3等价于x = x % 3,10除以3的余数为1。
13.关于scanf函数返回值的说法正确的是( )
A.始终等于0
B.通常表示成功赋值的数据项个数
C.表示输出字符的个数
D.表示最后输入的整数值
【答案】B
【解析】scanf通常返回成功赋值的数据项个数,例如成功读取两个数据时返回2。
14.printf("%.2f", 3.14159);输出的结果是( )
A.3.1
B.3
C.3.14
D.3.14159
【答案】C
【解析】%.2f表示以实数形式输出并保留两位小数,3.14159按四舍五入显示为3.14。
15.函数abs(-8)的返回值是( )
A.8
B.无法确定
C.0
D.-8
【答案】A
【解析】abs函数用于求整数的绝对值,abs(-8)返回8。
16.函数sqrt(49.0)的返回值通常是( )
A.6.5
B.8.0
C.6.0
D.7.0
【答案】D
【解析】sqrt函数求平方根,49.0的平方根为7.0。
17.函数pow(2.0, 3.0)的返回值通常是( )
A.6.0
B.9.0
C.8.0
D.5.0
【答案】C
【解析】pow(x,y)计算x的y次幂,2.0的3.0次幂为8.0。
18.函数fabs(-2.5)的返回值是( )
A.5.0
B.2.5
C.0.0
D.-2.5
【答案】B
【解析】fabs函数用于求实数的绝对值,fabs(-2.5)返回2.5。
19.已知int x = 5;,一元负号表达式-x的值是( )
A.-6
B.5
C.0
D.-5
【答案】D
【解析】一元负号把x的值变为相反数,-x的结果为-5。
20.执行int a, b; a = b = 4;后,a和b的值分别是( )
A.4和4
B.4和0
C.0和4
D.未定义
【答案】A
【解析】赋值表达式从右向左结合,先把4赋给b,再把赋值表达式的值4赋给a。
二、简答题(共2题,每题10分,共20分)
1.阅读程序,写出程序的输出结果。
#include <stdio.h>
int main( )
{
int quantity = 3;
double price = 12.5;
double total = price * quantity;
printf("%d %.1f
", quantity, total);
return 0;
}
【答案】输出:3 37.5。
【解析】total由12.5乘以3得到37.5,quantity用%d输出,total用%.1f保留1位小数输出。
2.阅读程序,写出程序的输出结果。
#include <stdio.h>
int main( )
{
int x = 17;
int quotient = x / 5;
int remainder = x % 5;
quotient += 1;
remainder *= 2;
printf("%d %d
", quotient, remainder);
return 0;
}
【答案】输出:4 4。
【解析】17/5的整数商为3,17%5的余数为2;复合赋值后quotient变为4,remainder变为4。
三、案例分析题(共1题,共10分)
1.下面程序用于计算两个整数的平均值,但有一处错误,请指出并改正,使程序能够正确输出平均值。
代码如下:
#include <stdio.h>
int main( )
{
int a = 88;
int b = 91;
double average = (a + b) / 2;
printf("%.1f
", average);
return 0;
}
【答案】double average = (a + b) / 2;应改为double average = (a + b) / 2.0;。
【解析】a和b是int型,除以整数2会先进行整数除法,结果再转换为double;使用2.0可使除法按实数进行,得到正确平均值89.5。
四、综合应用题(共1题,共10分)
1.编写程序:输入两个整数a和b,计算并输出a与b的差的绝对值。
【答案】
参考程序如下:
#include <stdio.h>
#include <stdlib.h>
int main( )
{
int a, b;
scanf("%d%d", &a, &b);
printf("%d
", abs(a - b));
return 0;
}
【解析】程序先读入两个整数,再用a-b得到差值,abs函数把差值转换为非负的绝对值,最后使用%d输出。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$