内容正文:
编写说明:《软件与应用技术考纲百套卷》依据山东省《软件与应用技术类专业知识考试标准》编写,本套试卷共100份,分为三个部分,第一部分是知识点训练卷,每个知识点2份试卷共76份,第二部分是常考题训练卷,每个知识模块2份训练卷共12份,第三个部分是专业综合训练卷,参考历年软件与应用技术类专业真题试卷,编写了12份。
本试卷是《软件与应用技术考纲百套卷》的第3卷,按知识模块1 C语言程序设计知识,2.分支程序设计的两点范围要求编写。其两点要求是:
(1)理解关系表达式和逻辑表达式。
(2)掌握条件语句(if语句)和多分支语句(switch语句)的用法。
山东省《软件与应用技术考纲百套卷》 第3卷
知识模块1 C语言程序设计知识
2.分支程序设计 知识点训练卷
一、单项选择题(本大题共20小题,每题3分,共60分)
1. 设有说明语句:`inta=1,b=2,c=3,d=4,m=2,n=2;` 则执行 `(m=a<b)&&(n=c>d)` 后 `n` 的值为。( )
A. 1
B. 0
C. 3
D. 4
2. 已有定义:`int x=3,y=4,z=5;` 则表达式 `!(x+y)+z-1&&(y+z/2)` 的值是。( )
A. 6
B. 0
C. 2
D. 1
3. 逻辑运算符两侧运算对象的数据类型。( )
A. 只能是 0 或 1
B. 只能是 0 或 非 0 正数
C. 只能是整型或字符型数据
D. 可以是任何类型的数据
4. 以下关于运算符优先顺序的描述中正确的是。( )
A. 关系运算符 < 算术运算符 < 赋值运算符 < 逻辑与运算符
B. 逻辑与运算符 < 关系运算符 < 算术运算符 < 赋值运算符
C. 赋值运算符 < 逻辑与运算符 < 关系运算符 < 算术运算符
D. 算术运算符 < 关系运算符 < 赋值运算符 < 逻辑与运算符
5. 设有说明语句:`int a=1,b=2,c=3,d=4,m=2,n=2;` 则执行 `(m=a>b)&&(n=c>d)` 后 `n` 的值为。( )
A. 1
B. 2
C. 3
D. 4
6. 能正确表示“当 x 的取值在[-58,-40]和[40,58]范围内为真,否则为假”的表达式是。( )
A. `(x>=-58)&&(x<=-40)&&(x>=40)&&(x<=58)`
B. `(x>=-58)||(x<=-40)||(x>=40)||(x<=58)`
C. `(x>=-58)&&(x<=-40)||(x>=40)&&(x<=58)`
D. `(x>=-58)||(x<=-40)&&(x>=40)||(x<=58)`
7. 判断 char 型变量 `s` 是否为小写字母的正确表达式是。( )
A. `'a'<=s<=z`
B. `(s>='a')&&(s<='z')`
C. `(s>='a')&&(s<='z')`
D. `(s>='a')&&(s<='z')`
8. 执行以下程序段后,`w` 的值为。( )
int w='A',x=14,y=15;
w=((x%y)&&(w<'a'));
A. -1
B. Null
C. 1
D. 0
9. 下面程序的输出结果是。( )
#include<stdio.h>
main() {
int a=-1,b=4,k;
k=(++a<=0)&&(b--<=0);
printf("%d,%d,%d
",k,a,b);
}
A. 1,1,2
B. 1,0,3
C. 0,1,2
D. 0,0,3
10. 为表示关系 `x≥y≥z`,应使用 C 语言表达式。( )
A. `(x>=y)&&(y>=z)`
B. `(x>=y) AND (y>=z)`
C. `(x>=y>=z)`
D. `(x>=y)&&(y>=z)`
11. 有以下程序段,程序段的运行结果是。( )
int x=1,y=2,z=3;
if(x>y)
printf("%d",y<x?1:2);
else
printf("%d",z<x?2:3);
A. 1
B. 2
C. 3
D. 4
12. 在 C 语言中,紧跟在 `if` 后 `()` 括号内的表达式。( )
A. 只能用逻辑表达式
B. 只能用关系表达式
C. 只能用逻辑表达式或关系表达式
D. 可以是任意表达式
13. 若有定义 `int x=10,y=20,z=30;`,则执行下列语句后 `x`、`y`、`z` 的值是。( )
if(x>y) z=x; x=y; y=z;
A. x=10, y=20, z=30
B. x=20