第49卷 算法与程序设计—运算符与表达式—河北省计算机类—考纲百套卷
|
2份
|
19页
|
47人阅读
|
0人下载
内容正文:
编写说明:河北省对口招生计算机类《考纲百套卷》,依据《河北省普通高等学校对口招生考试大纲(2028版专业课)计算机类》编写。本专辑涵盖9门课程,第一部分是专业核心模块训练卷,第二部分为各门课程的综合训练卷。本专辑共98份试卷。
本试卷是第49卷为专业核心模块训练卷,按《算法与程序设计》中"算法程序卷4——运算符与表达式"范围和要求编写。具体内容为:掌握运算符:算术运算符、赋值运算符、关系运算符、逻辑运算符;各种运算符的优先级;掌握表达式组成规则及各类表达式
河北省对口招生职业技能考试
算法与程序设计 试卷
(算法程序卷4——运算符与表达式)
考试时间:90分钟 满分:100分
一、单项选择题(共20题,每题2分,共40分)
1. C#中,表示不等于的运算符是()
A.!= B.<> C.=< D.==
【答案】A
【解析】!=表示不等于。
2. C#中,逻辑与运算符是()
A.& B.&& C.| D.||
【答案】B
【解析】&&是逻辑与。
3. C#中,逻辑或运算符是()
A.& B.&& C.| D.||
【答案】D
【解析】||是逻辑或。
4. C#中,算术运算符优先级最高的是()
A.加减 B.乘除取模 C.括号 D.赋值
【答案】B
【解析】乘除取模优先级最高。
5. C#中,三元运算符的条件是()
A.> B.== C.? D.&
【答案】C
【解析】三元运算符用?。
6. C#中,赋值运算符的优先级与()相当
A.最高 B.算术运算 C.关系运算 D.最低
【答案】D
【解析】赋值运算符优先级最低。
7. C#中,表达式3+5*2的运算结果是()
A.16 B.13 C.11 D.10
【答案】B
【解析】先乘除后加减,3+5*2=13。
8. C#中,表达式10/3的结果是()
A.3.33 B.3 C.4 D.3.0
【答案】B
【解析】整数除法取整,10/3=3。
9. C#中,表达式10%3的结果是()
A.3 B.1 C.0 D.4
【答案】B
【解析】10%3=1(余数)。
10. C#中,算术运算符%表示()。
A.除法 B.取模(余数) C.整除 D.乘法
【答案】B
【解析】%是取模运算符,返回除法的余数,如10%3结果为1。
11. 在C#中,表达式3/2的结果是()。
A.1.5 B.1 C.2 D.1.0
【答案】B
【解析】两个整数相除结果为整数(截断小数),3/2=1。
12. C#中,关系运算符用于()。
A.比较两个值的大小关系 B.赋值操作 C.逻辑运算 D.位运算
【答案】A
【解析】关系运算符(==、!=、>、<、>=、<=)用于比较两个值,返回bool类型。
13. C#中,++i和i++的区别是()。
A.++i先自增后使用值,i++先使用值后自增 B.两者完全相同 C.++i是后置,i++是前置 D.没有区别
【答案】A
【解析】++i(前置递增)先让i加1再返回值;i++(后置递增)先返回值再加1。
14. C#中,以下哪个运算符优先级最低()。
A.* B.+ C.= D.>
【答案】C
【解析】赋值运算符(=)的优先级最低(仅次于逗号运算符)。
15. C#中,逻辑与运算符&&的短路特性是指()。
A.左边为false时,不计算右边直接返回false B.左边为true时,不计算右边 C.两边总是都会被计算 D.短路特性不起作用
【答案】A
【解析】&&的短路特性:若左边表达式为false,结果必为false,不再计算右边。
16. C#中,表达式!(a > b)的含义是()。
A.a不大于b B.a小于b C.a等于b D.a大于b
【答案】A
【解析】!(a > b)等价于(a <= b),即a不大于b(小于或等于)。
17. C#中,条件运算符(?:)的语法是()。
A.条件 ? 表达式1 : 表达式2 B.条件 : 表达式1 ? 表达式2 C.条件 && 表达式1 || 表达式2 D.条件 ? 表达式1 ? 表达式2
【答案】A
【解析】条件运算符是三元运算符:条件为true时返回表达式1,否则返回表达式2。
18. C#中,以下关于C#逻辑运算符的说法,正确的是()。
A.&&表示短路与 B.||表示短路或 C.运算结果为bool类型 D.以上都正确
【答案】D
【解析】&&和||是短路运算符,返回bool。
19. C#中,字符串连接运算符是()。
A.+ B.& C.| D.*
【答案】A
【解析】C#中+既可做算术加法,也可做字符串连接。
20. C#中,is运算符的作用是()。
A.判断对象是否为某类型 B.创建对象实例 C.类型转换 D.以上都不对
【答案】A
【解析】is运算符检查对象是否为指定类型或其派生类,返回bool值。
二、填空题(共10空,每空1分,共10分)
21. C#中,算术运算里用于求两个整数余数的运算符是_____。
【答案】%
【解析】C#中,%(取模运算符)专门用于计算两个整数相除后的余数,是算术运算符的一种。
22. C#中,所有关系运算符的运算结果类型都是_____类型。
【答案】bool(或布尔)
【解析】关系运算符(>、<、==、!=等)用于比较两个值的关系,结果只有两种:true(成立)或false(不成立),因此类型为bool类型。
23. C#中,逻辑与&&和逻辑或||都属于_____逻辑运算符(填“短路”或“非短路”)。
【答案】短路
【解析】&&(短路与)和||(短路或)均具备短路特性,即根据左边表达式结果可直接判断整体结果时,不计算右边表达式;非短路逻辑运算符是&和|。
24. 在表达式中,使用_____可以改变运算符的默认优先级。
【答案】括号(或())
【解析】C#中,括号(())的优先级最高,将表达式中的某部分用括号括起来,可优先计算该部分,从而改变运算符的默认优先级。
25. C#中,i++属于_____自增运算符(填“前置”或“后置”)。
【答案】后置
【解析】自增运算符分为前置(++i)和后置(i++),i++的格式为“变量+自增符号”,属于后置自增,规则是先使用变量值,再自增。
26. C#中,用于表示“非”逻辑运算的运算符是_____。
【答案】!(或逻辑非)
【解析】C#中,!是逻辑非运算符,用于对bool类型表达式的结果取反,如!true结果为false,!false结果为true。
27. C#中,乘、除、取模运算符的优先级_____加减运算符(填“高于”或“低于”)。
【答案】高于
【解析】算术运算符优先级:乘(*)、除(/)、取模(%)优先级高于加(+)、减(-),计算时先执行乘除取模,再执行加减。
28. 在所有C#运算符中,赋值运算符=的优先级是_____(填“最高”或“最低”)。
【答案】最低
【解析】C#中,赋值运算符(=)的优先级最低,所有其他运算符(算术、关系、逻辑等)的运算都完成后,才会执行赋值操作。
29. C#中,关系运算符的优先级低于算术运算符,高于_____运算符。
【答案】逻辑
【解析】运算符优先级排序(从高到低):括号 > 算术 > 关系 > 逻辑 > 赋值,因此关系运算符优先级低于算术,高于逻辑。
30. 三元条件运算符的完整格式是:条件 ? 表达式1 : _____。
【答案】表达式2
【解析】三元条件运算符的标准格式为“条件 ? 表达式1 : 表达式2”,条件为true时执行表达式1,为false时执行表达式2。
三、判断题(共5题,每题2分,共10分)
31. C#中,逻辑与运算符&&具备短路运算特性。( )
【答案】√
【解析】&&(短路与)的短路特性:左边表达式为false时,不计算右边表达式,直接返回false,因此该说法正确。
32. C#中,整数表达式5/2的运算结果是2.5。( )
【答案】×
【解析】C#中,两个整数相除属于整除运算,只保留整数部分,5/2的结果是2,而非2.5;若要得到2.5,需将其中一个数转为浮点数(如5.0/2)。
33. C#运算符的优先级顺序(从高到低):括号 > 算术 > 关系 > 逻辑 > 赋值。( )
【答案】√
【解析】C#中,运算符优先级遵循“括号优先,算术次之,然后是关系、逻辑,最后是赋值”的规则,该说法正确。
34. C#中,++a和a++在单独一行执行时,效果完全一致。( )
【答案】√
【解析】当++a和a++单独一行执行时,均只完成“变量自增1”的操作,无其他运算,因此效果完全一致;两者的区别仅在与其他表达式结合时体现。
35. C#中,!true的运算结果是false。( )
【答案】√
【解析】!是逻辑非运算符,用于对bool值取反,true的取反结果为false,false的取反结果为true,因此该说法正确。
四、程序分析题(共1题,每题10分,共10分)
36. 阅读下面的C#程序,分析其功能(结合运算符与表达式知识点)并写出运行结果。
using System;
class Program{
static void Main(){
int a = 3, b = 5;
bool result = a > b;
Console.WriteLine(!result);
}
}
程序运行结果:___________________
【答案】True(或true)
【解析】程序功能:定义两个整数变量a=3、b=5,通过关系运算符>判断a是否大于b,将结果(false)赋值给bool变量result,再通过逻辑非运算符!对result取反,最后输出取反后的结果。
运算过程:1. a=3,b=5,a > b(3>5)结果为false;2. !result即!false,结果为true;3. 控制台输出true。
五、写运行结果题(共2题,每题5分,共10分)
37. 分析下面C#程序段的输出结果(结合运算符优先级知识点):
using System;
class Program{
static void Main(){
int x = 8 + 4 * 2;
int y = (8 + 4) * 2;
Console.WriteLine(x);
Console.WriteLine(y);
}
}
程序运行结果:___________________
【答案】16;24(或分行输出16、24)
【解析】核心考点是运算符优先级和括号对优先级的改变:1. 变量x的表达式8+4*2,乘号优先级高于加号,先算4*2=8,再算8+8=16,因此x=16;2. 变量y的表达式(8+4)*2,括号优先级最高,先算括号内8+4=12,再算12*2=24,因此y=24;3. 控制台依次输出x和y的值。
38. 分析下面C#程序段的输出结果(结合逻辑运算符知识点):
using System;
class Program{
static void Main(){
bool a = 5 > 3;
bool b = 2 < 1;
Console.WriteLine(a && b);
Console.WriteLine(a || b);
}
}
程序运行结果:___________________
【答案】False;True(或分行输出False、True,大小写均可)
【解析】核心考点是逻辑运算符的运算规则:1. 先计算关系表达式:5>3结果为true(a=true),2<1结果为false(b=false);2. a&&b(true&&false),短路与运算,左边为true需计算右边,整体结果为false;3. a||b(true||false),短路或运算,左边为true无需计算右边,整体结果为true;4. 控制台依次输出两个逻辑运算结果。
六、程序改错题(共1题,每题5分,共5分)
39. 下面程序用于计算两个表达式的运算结果(结合关系、逻辑运算符),但有2处错误,请找出并改正:
using System;
class Program
{
static void Main()
{
int a = 10;
int b = 3;
// 错误1:表达式逻辑错误
Console.WriteLine(a % b == 0);
// 错误2:逻辑表达式矛盾
Console.WriteLine(a > b && a < 5);
}
}
请找出程序中的错误,并写出正确答案。
【答案】
错误1:表达式a % b == 0逻辑与程序用途不符(程序用于计算合理表达式结果,10%3=1≠0,该表达式恒为false,无实际意义),需修改为合理的关系表达式;
错误2:逻辑表达式a > b && a < 5矛盾(a=10,10>3为true,10<5为false,true&&false恒为false,无实际意义),需修改为不矛盾的逻辑表达式;
正确程序:
using System;
class Program
{
static void Main()
{
int a = 10;
int b = 3;
// 改正1:修改为合理的关系表达式(判断a是否能被b整除的否定,或其他合理表达式)
Console.WriteLine(a % b != 0);
// 改正2:修改为不矛盾的逻辑表达式(判断a大于b且a大于5)
Console.WriteLine(a > b && a > 5);
}
}
【解析】1. 错误1核心:原表达式无实际运算意义,修改后a%b!=0(10%3≠0)结果为true,符合“计算表达式结果”的用途;2. 错误2核心:逻辑表达式前后矛盾,无法同时成立,修改后a>b&&a>5(10>3且10>5)结果为true,逻辑合理。
七、程序填空题(共3题,每题5分,共15分)
40. 下面程序用于演示自增运算符的前置与后置区别,请填写空白处(结合自增运算符知识点):
using System;
class Program
{
static void Main()
{
int i = 5;
// 前置自增
int x = _____;
// 后置自增
int y = i++;
Console.WriteLine(x);
Console.WriteLine(y);
}
}
【答案】++i
【解析】核心考点是前置自增与后置自增的区别:1. 题干提示空白处是前置自增,前置自增的写法为++i;2. 运算过程:i初始值为5,++i先将i自增为6,再赋值给x(x=6);i++先将i当前值(6)赋值给y(y=6),再将i自增为7;最终输出x=6、y=6。
41. 下面程序用于判断成绩是否及格,请填写空白处(结合关系运算符知识点):
using System;
class Program
{
static void Main()
{
int score = 85;
// 判断成绩是否及格(60分及以上)
bool pass = score _____ 60;
Console.WriteLine(pass);
}
}
【答案】>=(或>=)
【解析】核心考点是关系运算符的应用:及格标准为60分及以上,即score大于或等于60,对应的关系运算符为>=;填入后,score=85>=60,pass=true,控制台输出true。
42. 下面程序用于判断一个数是偶数还是奇数,请填写空白处(结合三元运算符知识点):
using System;
class Program
{
static void Main()
{
int num = 9;
// 三元运算符判断奇偶
string res = num % 2 == 0 _____ "偶数" _____ "奇数";
Console.WriteLine(res);
}
}
【答案】?;:
【解析】核心考点是三元运算符的语法格式:三元运算符格式为“条件 ? 表达式1 : 表达式2”;本题中,条件是num%2==0(判断是否为偶数),表达式1是"偶数",表达式2是"奇数",因此空白处依次填入?和:;运算过程:num=9,9%2==0为false,因此res="奇数",控制台输出"奇数"。
学科网(北京)股份有限公司
$
编写说明:河北省对口招生计算机类《考纲百套卷》,依据《河北省普通高等学校对口招生考试大纲(2028版专业课)计算机类》编写。本专辑涵盖9门课程,第一部分是专业核心模块训练卷,第二部分为各门课程的综合训练卷。本专辑共98份试卷。
本试卷是第49卷为专业核心模块训练卷,按《算法与程序设计》中"算法程序卷4——运算符与表达式"范围和要求编写。具体内容为:掌握运算符:算术运算符、赋值运算符、关系运算符、逻辑运算符;各种运算符的优先级;掌握表达式组成规则及各类表达式
河北省对口招生职业技能考试
算法与程序设计 试卷
(算法程序卷4——运算符与表达式)
考试时间:90分钟 满分:100分
一、单项选择题(共20题,每题2分,共40分)
1. C#中,表示不等于的运算符是()
A.!= B.<> C.=< D.==
2. C#中,逻辑与运算符是()
A.& B.&& C.| D.||
3. C#中,逻辑或运算符是()
A.& B.&& C.| D.||
4. C#中,算术运算符优先级最高的是()
A.加减 B.乘除取模 C.括号 D.赋值
5. C#中,三元运算符的条件是()
A.> B.== C.? D.&
6. C#中,赋值运算符的优先级与()相当
A.最高 B.算术运算 C.关系运算 D.最低
7. C#中,表达式3+5*2的运算结果是()
A.16 B.13 C.11 D.10
8. C#中,表达式10/3的结果是()
A.3.33 B.3 C.4 D.3.0
9. C#中,表达式10%3的结果是()
A.3 B.1 C.0 D.4
10. C#中,算术运算符%表示()。
A.除法 B.取模(余数) C.整除 D.乘法
11. 在C#中,表达式3/2的结果是()。
A.1.5 B.1 C.2 D.1.0
12. C#中,关系运算符用于()。
A.比较两个值的大小关系 B.赋值操作 C.逻辑运算 D.位运算
13. C#中,++i和i++的区别是()。
A.++i先自增后使用值,i++先使用值后自增 B.两者完全相同 C.++i是后置,i++是前置 D.没有区别
14. C#中,以下哪个运算符优先级最低()。
A.* B.+ C.= D.>
15. C#中,逻辑与运算符&&的短路特性是指()。
A.左边为false时,不计算右边直接返回false B.左边为true时,不计算右边 C.两边总是都会被计算 D.短路特性不起作用
16. C#中,表达式!(a > b)的含义是()。
A.a不大于b B.a小于b C.a等于b D.a大于b
17. C#中,条件运算符(?:)的语法是()。
A.条件 ? 表达式1 : 表达式2 B.条件 : 表达式1 ? 表达式2 C.条件 && 表达式1 || 表达式2 D.条件 ? 表达式1 ? 表达式2
18. C#中,以下关于C#逻辑运算符的说法,正确的是()。
A.&&表示短路与 B.||表示短路或 C.运算结果为bool类型 D.以上都正确
19. C#中,字符串连接运算符是()。
A.+ B.& C.| D.*
20. C#中,is运算符的作用是()。
A.判断对象是否为某类型 B.创建对象实例 C.类型转换 D.以上都不对
二、填空题(共10空,每空1分,共10分)
21. C#中,算术运算里用于求两个整数余数的运算符是_____。
22. C#中,所有关系运算符的运算结果类型都是_____类型。
23. C#中,逻辑与&&和逻辑或||都属于_____逻辑运算符(填“短路”或“非短路”)。
在表达式中,使用_____可以改变运算符的默认优先级。
25. C#中,i++属于_____自增运算符(填“前置”或“后置”)。
26. C#中,用于表示“非”逻辑运算的运算符是_____。
27. C#中,乘、除、取模运算符的优先级_____加减运算符(填“高于”或“低于”)。
28. 在所有C#运算符中,赋值运算符=的优先级是_____(填“最高”或“最低”)。
29. C#中,关系运算符的优先级低于算术运算符,高于_____运算符。
30. 三元条件运算符的完整格式是:条件 ? 表达式1 : _____。
三、判断题(共5题,每题2分,共10分)
31. C#中,逻辑与运算符&&具备短路运算特性。( )
32. C#中,整数表达式5/2的运算结果是2.5。( )
33. C#运算符的优先级顺序(从高到低):括号 > 算术 > 关系 > 逻辑 > 赋值。( )
34. C#中,++a和a++在单独一行执行时,效果完全一致。( )
35. C#中,!true的运算结果是false。( )
四、程序分析题(共1题,每题10分,共10分)
36. 阅读下面的C#程序,分析其功能(结合运算符与表达式知识点)并写出运行结果。
using System;
class Program{
static void Main(){
int a = 3, b = 5;
bool result = a > b;
Console.WriteLine(!result);
}
}
程序运行结果:___________________
五、写运行结果题(共2题,每题5分,共10分)
37. 分析下面C#程序段的输出结果(结合运算符优先级知识点):
using System;
class Program{
static void Main(){
int x = 8 + 4 * 2;
int y = (8 + 4) * 2;
Console.WriteLine(x);
Console.WriteLine(y);
}
}
程序运行结果:___________________
38. 分析下面C#程序段的输出结果(结合逻辑运算符知识点):
using System;
class Program{
static void Main(){
bool a = 5 > 3;
bool b = 2 < 1;
Console.WriteLine(a && b);
Console.WriteLine(a || b);
}
}
程序运行结果:___________________
六、程序改错题(共1题,每题5分,共5分)
39. 下面程序用于计算两个表达式的运算结果(结合关系、逻辑运算符),但有2处错误,请找出并改正:
using System;
class Program
{
static void Main()
{
int a = 10;
int b = 3;
// 错误1:表达式逻辑错误
Console.WriteLine(a % b == 0);
// 错误2:逻辑表达式矛盾
Console.WriteLine(a > b && a < 5);
}
}
请找出程序中的错误,并写出正确答案。
七、程序填空题(共3题,每题5分,共15分)
40. 下面程序用于演示自增运算符的前置与后置区别,请填写空白处(结合自增运算符知识点):
using System;
class Program
{
static void Main()
{
int i = 5;
// 前置自增
int x = _____;
// 后置自增
int y = i++;
Console.WriteLine(x);
Console.WriteLine(y);
}
}
41. 下面程序用于判断成绩是否及格,请填写空白处(结合关系运算符知识点):
using System;
class Program
{
static void Main()
{
int score = 85;
// 判断成绩是否及格(60分及以上)
bool pass = score _____ 60;
Console.WriteLine(pass);
}
}
42. 下面程序用于判断一个数是偶数还是奇数,请填写空白处(结合三元运算符知识点):
using System;
class Program
{
static void Main()
{
int num = 9;
// 三元运算符判断奇偶
string res = num % 2 == 0 _____ "偶数" _____ "奇数";
Console.WriteLine(res);
}
}
学科网(北京)股份有限公司
$