第1单元 让我们和计算机对话吧!

高手闯关1-1

1、单选题:
计算机能直接执行的程序是(    )。‍
选项:
A: 源程序
B: 目标程序
C: 汇编程序
D: 可执行程序
答案: 【 可执行程序

2、单选题:
以下叙述中错误的是(    )‏
选项:
A: C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令
B: C程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件
C: 用C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中
D: C语言源程序经编译后生成后缀为.obj的目标程序
答案: 【 C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令

3、单选题:
下列叙述中错误的是(    )‌
选项:
A: C程序可以由多个程序文件组成
B: 一个C语言程序只能实现一种算法
C: C程序可以由一个或多个函数组成
D: 一个C函数可以单独作为一个C程序文件存在
答案: 【 一个C语言程序只能实现一种算法

4、单选题:
以下四个程序中,完全正确的是(    )‎
选项:
A: #include  <stdio.h>main();{/*/ programming /*/ printf("programming!n");}
B: #include  <stdio.h>main(){/* programming */      printf("programming!n"); }
C: #include  <stdio.h>main(){/*/* programming */*/ printf("programming!n"); }
D: ‍include  <stdio.h>main(){/* programming */ printf("programming!n"); }
答案: 【 #include  <stdio.h>main(){/* programming */      printf("programming!n"); }

5、单选题:
以下叙述中正确的是(    )‏
选项:
A: C语言规定必须用main作为主函数名,程序将从此开始执行
B: 可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行
C: C语言程序将从源程序中第一个函数开始执行
D: main的各种大小写拼写形式都可以作为主函数名,如:MAIN,Main等
答案: 【 C语言规定必须用main作为主函数名,程序将从此开始执行

6、单选题:
以下叙述中正确的是(    )‌
选项:
A: C语句必须在一行内写完
B: C程序中的每一行只能写一条语句
C: C语言程序中的注释必须与语句写在同一行
D: 简单C语句必须以分号结束
答案: 【 简单C语句必须以分号结束

7、单选题:
‍以下叙述中正确的是(    )‍
选项:
A: 用C语言编写的程序只能放在一个程序文件中
B: C程序书写格式严格,要求一行内只能写一个语句
C: C程序中的注释只能出现在程序的开始位置和语句的后面
D: C程序书写格式自由,一个语句可以写在多行上
答案: 【 C程序书写格式自由,一个语句可以写在多行上

8、单选题:
‍C语言源程序名的后缀是(    )‏
选项:
A: .C
B: .exe
C: .obj
D: .cp
答案: 【 .C

9、单选题:
​下列叙述中正确的是(    )‍
选项:
A: C程序中所有函数之间都可以相互调用
B: 在C程序中main函数的位置是固定的
C: 在C程序的函数中不能定义另一个函数
D: 每个C程序文件中都必须要有一个main函数
答案: 【 在C程序的函数中不能定义另一个函数

10、单选题:
‎有以下程序(    )    #include <stdio.h>    main()    { int  a=0, b=0;    /*  给a赋值  a=10;    b=20;                         给b赋值     */    printf("a+b=%dn",a+b);   /*  输出计算结果 */    }程序运行后的输出结果是(    )​
选项:
A: 出错
B: a+b=30
C: a+b=10
D: a+b=0
答案: 【 a+b=0

11、单选题:
​以下叙述中正确的是(    )​
选项:
A: 书写源程序时,必须注意缩进格式,否则程序会有编译错误
B: 程序的主函数名除main外,也可以使用Main或_main
C: 程序可以包含多个主函数,但总是从第一个主函数处开始执行
D: 在C程序中,模块化主要是通过函数来实现的
答案: 【 在C程序中,模块化主要是通过函数来实现的

12、单选题:
‌以下叙述中正确的是(    )​
选项:
A: C语言程序所调用的函数必须放在main函数的前面
B: C语言程序总是从最前面的函数开始执行
C: C语言程序中main函数必须放在程序的开始位置
D: C语言程序总是从main函数开始执行
答案: 【 C语言程序总是从main函数开始执行

13、单选题:
‌以下叙述中正确的是(    )‍
选项:
A: 每个后缀为.C的C语言源程序都可以单独进行编译
B: 每个后缀为.C的C语言源程序都应该包含一个main函数
C: 在C语言程序中,main函数必须放在其他函数的最前面
D: 在C语言程序中,只有main函数才可单独进行编译
答案: 【 每个后缀为.C的C语言源程序都可以单独进行编译

14、单选题:
‏以下叙述中错误的是(    )‌
选项:
A: C程序在运行过程中所有计算都以二进制方式进行
B: C程序在运行过程中所有计算都以十进制方式进行
C: 所有C程序都需要编译链接无误后才能运行
D: C程序中字符变量存放的是字符的ASCII值
答案: 【 C程序在运行过程中所有计算都以十进制方式进行

15、单选题:
‏我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令。关于转换以下说法错误的是(    )‍
选项:
A: 一条C语句可能会被转换成零条机器指令
B: 一条C语句可能会被转换成多条机器指令
C: 一条C语句对应转换成一条机器指令‍
D: 某种类型和格式的C语句被转换成机器指令的条数是固定的
答案: 【 一条C语句对应转换成一条机器指令‍

16、单选题:
‏以下叙述正确的是(  )‍
选项:
A: 计算机只接收由0和1代码组成的二进制指令或数据
B: 计算机只接收由0和1代码组成的十进制指令或数据
C: 计算机可直接接收并运行C源程序
D: 计算机可直接接收并运行任意高级语言编写的源程序
答案: 【 计算机只接收由0和1代码组成的二进制指令或数据

17、单选题:
‎下列叙述中错误的是(  )‌
选项:
A: C程序可以由多个程序文件组成
B: 一个C语言程序只能实现一种算法
C: C程序可以由一个或多个函数组成
D: 一个C函数可以单独作为一个C程序文件存在
答案: 【 一个C语言程序只能实现一种算法

高手闯关1-1训练

1、单选题:
‏计算机能直接执行的程序是(    )。‌
选项:
A: 源程序
B: 目标程序
C: 汇编程序
D: 可执行程序
答案: 【 可执行程序

2、单选题:
​以下叙述中错误的是(    )​
选项:
A: C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令
B: C程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件
C: 用C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中
D: C语言源程序经编译后生成后缀为.obj的目标程序
答案: 【 C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令

3、单选题:
‍下列叙述中错误的是(    )​
选项:
A: C程序可以由多个程序文件组成
B: 一个C语言程序只能实现一种算法
C: C程序可以由一个或多个函数组成
D: 一个C函数可以单独作为一个C程序文件存在
答案: 【 一个C语言程序只能实现一种算法

4、单选题:
‌以下四个程序中,完全正确的是(    )‍
选项:
A: #include  <stdio.h>main();{/*/ programming /*/ printf("programming!n");}
B: #include  <stdio.h>main(){/* programming */      printf("programming!n"); }
C: #include  <stdio.h>main(){/*/* programming */*/ printf("programming!n"); }
D: include  <stdio.h>main(){/* programming */ printf("programming!n"); }
答案: 【 #include  <stdio.h>main(){/* programming */      printf("programming!n"); }

5、单选题:
‍以下叙述中正确的是(    )‏
选项:
A: C语言规定必须用main作为主函数名,程序将从此开始执行
B: 可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行
C: C语言程序将从源程序中第一个函数开始执行
D: main的各种大小写拼写形式都可以作为主函数名,如:MAIN,Main等
答案: 【 C语言规定必须用main作为主函数名,程序将从此开始执行

6、单选题:
‌以下叙述中正确的是(    )​
选项:
A: C语句必须在一行内写完
B: C程序中的每一行只能写一条语句
C: C语言程序中的注释必须与语句写在同一行
D: 简单C语句必须以分号结束
答案: 【 简单C语句必须以分号结束

7、单选题:
‍以下叙述中正确的是(    )​
选项:
A: 用C语言编写的程序只能放在一个程序文件中
B: C程序书写格式严格,要求一行内只能写一个语句
C: C程序中的注释只能出现在程序的开始位置和语句的后面
D: C程序书写格式自由,一个语句可以写在多行上
答案: 【 C程序书写格式自由,一个语句可以写在多行上

8、单选题:
‌C语言源程序名的后缀是(    )‏
选项:
A: .C
B: .exe
C: .obj
D: .cp
答案: 【 .C

9、单选题:
​下列叙述中正确的是(    )‎
选项:
A: C程序中所有函数之间都可以相互调用
B: 在C程序中main函数的位置是固定的
C: 在C程序的函数中不能定义另一个函数
D: 每个C程序文件中都必须要有一个main函数
答案: 【 在C程序的函数中不能定义另一个函数

10、单选题:
‏有以下程序(    )    #include <stdio.h>    main()    { int  a=0, b=0;    /*  给a赋值  a=10;    b=20;                         给b赋值     */    printf("a+b=%dn",a+b);   /*  输出计算结果 */    }程序运行后的输出结果是(    )‎
选项:
A: 出错
B: a+b=30
C: a+b=10
D: a+b=0
答案: 【 a+b=0

11、单选题:
以下叙述中正确的是(    )‎
选项:
A: 书写源程序时,必须注意缩进格式,否则程序会有编译错误
B: 程序的主函数名除main外,也可以使用Main或_main
C: 程序可以包含多个主函数,但总是从第一个主函数处开始执行
D: 在C程序中,模块化主要是通过函数来实现的
答案: 【 在C程序中,模块化主要是通过函数来实现的

12、单选题:
以下叙述中正确的是(    )‍‌
选项:
A: C语言程序所调用的函数必须放在main函数的前面
B: C语言程序总是从最前面的函数开始执行
C: C语言程序中main函数必须放在程序的开始位置
D: C语言程序总是从main函数开始执行
答案: 【 C语言程序总是从main函数开始执行

13、单选题:
‏以下叙述中正确的是(    )‌
选项:
A: 每个后缀为.C的C语言源程序都可以单独进行编译
B:  每个后缀为.C的C语言源程序都应该包含一个main函数
C: 在C语言程序中,main函数必须放在其他函数的最前面
D: 在C语言程序中,只有main函数才可单独进行编译
答案: 【 每个后缀为.C的C语言源程序都可以单独进行编译

14、单选题:
​以下叙述中错误的是(    )‍
选项:
A: C程序在运行过程中所有计算都以二进制方式进行
B: C程序在运行过程中所有计算都以十进制方式进行
C: 所有C程序都需要编译链接无误后才能运行
D: C程序中字符变量存放的是字符的ASCII值
答案: 【 C程序在运行过程中所有计算都以十进制方式进行

15、单选题:
‌我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令。关于转换以下说法错误的是(    )‎
选项:
A: 一条C语句可能会被转换成零条机器指令
B: 一条C语句可能会被转换成多条机器指令
C: 一条C语句对应转换成一条机器指令
D: 某种类型和格式的C语句被转换成机器指令的条数是固定的
答案: 【 一条C语句对应转换成一条机器指令

16、单选题:
‏以下叙述正确的是(  )​
选项:
A: 计算机只接收由0和1代码组成的二进制指令或数据
B: 计算机只接收由0和1代码组成的十进制指令或数据
C: 计算机可直接接收并运行C源程序
D: 计算机可直接接收并运行任意高级语言编写的源程序
答案: 【 计算机只接收由0和1代码组成的二进制指令或数据

17、单选题:
‍下列叙述中错误的是(  )​
选项:
A: C程序可以由多个程序文件组成
B: 一个C语言程序只能实现一种算法
C: C程序可以由一个或多个函数组成
D: 一个C函数可以单独作为一个C程序文件存在
答案: 【 一个C语言程序只能实现一种算法

第2单元 算法——程序设计的灵魂

高手闯关2-1

1、单选题:
以下叙述中错误的是(    )‎
选项:
A: 使用三种基本结构构成的程序只能解决简单问题
B: 结构化程序由顺序、分支、循环三种基本结构组成
C: C语言是一种结构化程序设计语言
D: 结构化程序设计提倡模块化的设计方法
答案: 【 使用三种基本结构构成的程序只能解决简单问题

2、单选题:
‍以下选项中关于程序模块化的叙述错误的是(    )‍
选项:
A: 可采用自底向上、逐步细化的设计方法把若干独立模块组装成所要求的程序
B: 把程序分成若干相对独立、功能单一的模块,可便于重复使用这些模块
C: 把程序分成若干相对独立的模块,可便于编码和调试
D: 可采用自顶向下、逐步细化的设计方法把若干独立模块组装成所要求的程序
答案: 【 可采用自底向上、逐步细化的设计方法把若干独立模块组装成所要求的程序

3、单选题:
​关于算法,以下叙述中错误的是(    )‍
选项:
A: 某个算法可能会没有输入
B: 某个算法可能会有零个或多个输入
C: 一个算法对于某个输入的循环次数是可以事先估计出来的
D: 任何算法都能转换成计算机高级语言的程序,并在有限时间内运行完毕
答案: 【 任何算法都能转换成计算机高级语言的程序,并在有限时间内运行完毕

4、单选题:
‏C语言程序的模块化通过以下哪个选项来实现(    )‏
选项:
A: 变量
B: 函数
C: 程序行
D: 语句
答案: 【 函数

5、单选题:
‎以下不能用于描述算法的是(    )‏
选项:
A: 文字叙述
B: 程序语句
C: 伪代码和流程图
D: E-R图
答案: 【 E-R图

6、单选题:
‏以下叙述中正确的是(    )‌
选项:
A: 程序必须包含所有三种基本结构才能成为一种算法
B: 我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令
C: 如果算法非常复杂,则需要使用三种基本结构之外的语句结构,才能准确表达
D: 只有简单算法才能在有限的操作步骤之后结束
答案: 【 我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令

7、单选题:
‏以下叙述中正确的是(    )‍
选项:
A: 在算法设计时,可以把复杂任务分解成一些简单的子任务
B: 在C语言程序设计中,所有函数必须保存在一个源文件中
C: 只要包含了三种基本结构的算法就是结构化程序
D: 结构化程序必须包含所有的三种基本结构,缺一不可
答案: 【 在算法设计时,可以把复杂任务分解成一些简单的子任务

8、单选题:
‎C语言主要是借助以下哪种手段来实现程序模块化(    )‍
选项:
A: 定义函数
B: 定义常量和外部变量
C: 使用丰富的数据类型
D: 使用三种基本结构语句
答案: 【 定义函数

9、单选题:
‎以下叙述中错误的是(    )​
选项:
A: 算法正确的程序可以有零个输入
B: 算法正确的程序最终一定会结束
C: 算法正确的程序可以有零个输出
D: 算法正确的程序对于相同的输入一定有相同的结果
答案: 【 算法正确的程序可以有零个输出

10、单选题:
‎以下叙述中正确的是(    )‌
选项:
A: N-S流程图只能描述简单的顺序结构的程序
B: 程序的算法只能使用流程图来描述
C: 结构化程序的三种基本结构是循环结构、选择结构、顺序结构
D: 计算机可以直接处理C语言程序,不必进行任何转换
答案: 【 结构化程序的三种基本结构是循环结构、选择结构、顺序结构

11、单选题:
‎流程图是描述算法的很好的工具,一般的流程图中由几种基本图形组成。其中输入输出框的图形是(    )‍
选项:
A: 平行四边形
B: 长方形
C: 椭圆型
D: 菱形
答案: 【 平行四边形

12、单选题:
‍以下选项中叙述正确的是(    )​
选项:
A: 使用三种基本结构就可以实现任何复杂算法
B: 只要程序包含了三种基本结构中的任意一种,就是结构化程序
C: 程序语法错误要在运行时才能发现
D: C语言程序不需要包含main()函数
答案: 【 使用三种基本结构就可以实现任何复杂算法

13、单选题:
‌结构化程序由顺序、选择、循环三种基本结构组成,以下相关叙述错误的是(    )​
选项:
A: 三种基本结构不可以嵌套使用
B: 顺序结构是按语句在程序中的先后顺序逐条执行,没有分支,没有转移
C: 选择结构是根据不同的条件执行不同分支中的语句
D: 循环结构是根据条件决定是否重复、重复执行多少次循环体语句
答案: 【 三种基本结构不可以嵌套使用

14、单选题:
算法应当具有的特性不包括(    )‎
选项:
A: 可行性
B: 有穷性
C: 确定性
D: 美观性
答案: 【 美观性

15、单选题:
‎关于算法,以下叙述中错误的是(    )‎
选项:
A: 某个算法可能会没有输入
B: 某个算法可能会有多个输入
C: 一个算法对于某个输入的循环次数是可以事先估计出来的
D: 任何算法都能转换成计算机高级语言的程序,并在有限时间内运行完毕
答案: 【 任何算法都能转换成计算机高级语言的程序,并在有限时间内运行完毕

高手闯关2-1训练

1、单选题:
以下叙述中错误的是(    )‍
选项:
A: 使用三种基本结构构成的程序只能解决简单问题
B: 结构化程序由顺序、分支、循环三种基本结构组成
C: C语言是一种结构化程序设计语言
D: 结构化程序设计提倡模块化的设计方法
答案: 【 使用三种基本结构构成的程序只能解决简单问题

2、单选题:
​以下选项中关于程序模块化的叙述错误的是(    )‏
选项:
A: 可采用自底向上、逐步细化的设计方法把若干独立模块组装成所要求的程序
B: 把程序分成若干相对独立、功能单一的模块,可便于重复使用这些模块
C: 把程序分成若干相对独立的模块,可便于编码和调试
D: 可采用自顶向下、逐步细化的设计方法把若干独立模块组装成所要求的程序
答案: 【 可采用自底向上、逐步细化的设计方法把若干独立模块组装成所要求的程序

3、单选题:
​关于算法,以下叙述中错误的是(    )‏
选项:
A: 某个算法可能会没有输入
B: 某个算法可能会有零个或多个输入
C: 一个算法对于某个输入的循环次数是可以事先估计出来的
D: 任何算法都能转换成计算机高级语言的程序,并在有限时间内运行完毕
答案: 【 任何算法都能转换成计算机高级语言的程序,并在有限时间内运行完毕

4、单选题:
‏C语言程序的模块化通过以下哪个选项来实现(    )‌
选项:
A: 变量
B: 函数
C: 程序行
D: 语句
答案: 【 函数

5、单选题:
‍以下不能用于描述算法的是(    )‏
选项:
A: 文字叙述
B: 程序语句
C: 伪代码和流程图
D: E-R图
答案: 【 E-R图

6、单选题:
‏以下叙述中正确的是(    )​
选项:
A: 程序必须包含所有三种基本结构才能成为一种算法
B: 我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令
C: 如果算法非常复杂,则需要使用三种基本结构之外的语句结构,才能准确表达
D: 只有简单算法才能在有限的操作步骤之后结束
答案: 【 我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令

7、单选题:
​以下叙述中正确的是(    )​
选项:
A: 在算法设计时,可以把复杂任务分解成一些简单的子任务
B: 在C语言程序设计中,所有函数必须保存在一个源文件中
C: 只要包含了三种基本结构的算法就是结构化程序
D: 结构化程序必须包含所有的三种基本结构,缺一不可
答案: 【 在算法设计时,可以把复杂任务分解成一些简单的子任务

8、单选题:
‍C语言主要是借助以下哪种手段来实现程序模块化(    )​
选项:
A: 定义函数
B: 定义常量和外部变量
C: 使用丰富的数据类型
D: 使用三种基本结构语句
答案: 【 定义函数

9、单选题:
‏以下叙述中错误的是(    )​
选项:
A: 算法正确的程序可以有零个输入
B: 算法正确的程序最终一定会结束
C: 算法正确的程序可以有零个输出
D: 算法正确的程序对于相同的输入一定有相同的结果
答案: 【 算法正确的程序可以有零个输出

10、单选题:
‎以下叙述中正确的是(    )​
选项:
A: N-S流程图只能描述简单的顺序结构的程序
B: 程序的算法只能使用流程图来描述
C: 结构化程序的三种基本结构是循环结构、选择结构、顺序结构
D: 计算机可以直接处理C语言程序,不必进行任何转换
答案: 【 结构化程序的三种基本结构是循环结构、选择结构、顺序结构

11、单选题:
​流程图是描述算法的很好的工具,一般的流程图中由几种基本图形组成。其中输入输出框的图形是(    )‌
选项:
A: 平行四边形
B: 长方形
C: 椭圆型
D: 菱形
答案: 【 平行四边形

12、单选题:
‍以下选项中叙述正确的是(    )‍
选项:
A: 使用三种基本结构就可以实现任何复杂算法
B: 只要程序包含了三种基本结构中的任意一种,就是结构化程序
C: 程序语法错误要在运行时才能发现
D: C语言程序不需要包含main()函数
答案: 【 使用三种基本结构就可以实现任何复杂算法

13、单选题:
​结构化程序由顺序、选择、循环三种基本结构组成,以下相关叙述错误的是(    )‍
选项:
A: 三种基本结构不可以嵌套使用
B: 顺序结构是按语句在程序中的先后顺序逐条执行,没有分支,没有转移
C: 选择结构是根据不同的条件执行不同分支中的语句
D: 循环结构是根据条件决定是否重复、重复执行多少次循环体语句
答案: 【 三种基本结构不可以嵌套使用

14、单选题:
‏算法应当具有的特性不包括(    )‎
选项:
A: 可行性
B: 有穷性
C: 确定性
D: 美观性
答案: 【 美观性

15、单选题:
‎关于算法,以下叙述中错误的是(    )‎
选项:
A: 某个算法可能会没有输入
B: 某个算法可能会有多个输入
C: 一个算法对于某个输入的循环次数是可以事先估计出来的
D: 任何算法都能转换成计算机高级语言的程序,并在有限时间内运行完毕
答案: 【 任何算法都能转换成计算机高级语言的程序,并在有限时间内运行完毕

第3单元 身高体型判定系统”数据处理——顺序结构程序设计

过关斩将3-1

1、单选题:
‎关于C语言的变量名,以下叙述正确的是(  )​
选项:
A: 变量名不可以与关键字同名‍
B: 变量名不可以与预定义标识符同名
C: 变量名必须以字母开头
D: 变量名是没有长度限制的
答案: 【 变量名不可以与关键字同名‍

2、单选题:
​以下选项中可用作C语言中合法用户标识符的是(  )‏
选项:
A:  _123
B: void
C: -abc
D: 2a
答案: 【  _123

3、单选题:
​以下关于C语言的叙述中正确的是(    )​
选项:
A: C语言的数值常量中夹带空格不影响常量值的正确表示
B: C语言中的变量可以在使用之前的任何位置进行定义
C: 在C语言算术表达式的书写中,运算符两侧的运算数类型必须一致
D: C语言中的注释不可以夹在变量名或关键字的中间
答案: 【 C语言中的注释不可以夹在变量名或关键字的中间

4、单选题:
‏以下选项中不合法的标识符是(    )‍
选项:
A: &a
B: FOR
C: print
D: _00
答案: 【 &a

5、单选题:
​按照C语言规定的用户标识符命名规则,不能出现在标识符中的是(    )。‍
选项:
A: 大写字母
B: 下划线
C: 数字字符
D: 连接符
答案: 【 连接符

6、单选题:
‍以下选项中,能用作用户标识符的是(    )​
选项:
A: _0_
B: 8_8
C: void
D: unsigned
答案: 【 _0_

7、单选题:
‎下列定义变量的语句中错误的是(    )‎
选项:
A:  int  _int;
B: double  int_;
C: char  For;
D: float  US$;
答案: 【 float  US$;

8、单选题:
‌以下选项中,不合法的C语言用户标识符是(    )‎
选项:
A: a_b
B: AaBc
C: a--b
D: _1
答案: 【 a--b

9、单选题:
‌以下选项中正确的定义语句是(    )​
选项:
A: double, a, b;
B: double  a=b=7;
C: double  a; b;
D: double  a=7, b=7;
答案: 【 double  a=7, b=7;

过关斩将3-2

1、单选题:
‌设有定义:int x=11,y=12,z=0;,以下表达式值不等于12的是(  )‍
选项:
A:  (z,x,y)
B:  (z=x,y)
C:  z=(x,y)
D:  z=(x==y)
答案: 【  z=(x==y)

2、单选题:
‍以下程序段中的变量已定义为int类型sum = pad = 5;  pAd = sum++, pAd++, ++pAd;      printf( "%dn", pad );程序段的输出结果是(  )‎
选项:
A: 6
B: 4
C: 5
D: 程序出错
答案: 【 5

3、单选题:
‎设变量m为float类型,变量n为int类型,则以下能实现将m中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是(  )​
选项:
A: m=(m*100+0.5)/100.0
B: n=m*100+0.5, m=n/100.0
C: n=m/100+0.5, m=n*100.0
D: m=m*100+0.5/100.0
答案: 【 n=m*100+0.5, m=n/100.0

4、单选题:
‍以下选项中正确的定义语句是(  )‏
选项:
A: double, a, b;
B: double  a=b=7;
C: double  a; b;
D: double  a=7, b=7;
答案: 【 double  a=7, b=7;

5、单选题:
‍有如下程序#include   <stdio.h>main( ){    int  x = 072;    printf("X=%d.n", x+1);}程序运行后的输出结果是(  )​
选项:
A: X=115
B: X=73
C:  X=59.
D: X=72.
答案: 【  X=59.

6、单选题:
​以下不能输出小写字母a的选项是(  )‏
选项:
A: printf("%cn","a");
B: printf("%cn",'A'+32);
C: putchar(97);
D: putchar('a');
答案: 【 printf("%cn","a");

7、单选题:
‍若有以下程序    #include <stdio.h>    main()    {         char  c1, c2;       c1='C'+'8'-'3';   c2='9'-'0';       printf("%c  %dn", c1, c2);    }则程序的输出结果是(  )‎
选项:
A: H  '9'
B: H  9
C: F  '9'
D: 表达式不合法输出无定值
答案: 【 H  9

8、单选题:
‌若有定义语句:    int  x=12, y=8, z;在其后执行语句    z= 0.9+x/y;则z的值为(    )‎
选项:
A: 1
B: 1.9
C: 2
D: 2.4
答案: 【 1

9、单选题:
‎表达式3.6-5/2+1.2+5%2的值是(    )​
选项:
A: 4.3
B: 4.8
C: 3.3
D: 3.8
答案: 【 3.8

10、单选题:
‍有以下定义:    int  a;    long  b;    double  x, y; 则以下选项中正确的表达式是(    )‏
选项:
A: a=x<>y
B: a%(int)(x-y)
C: (a*y)%b
D: y=x+y=x
答案: 【 a%(int)(x-y)

11、单选题:
‌设变量已正确定义并赋值,以下正确的表达式是(    )‏
选项:
A: x=y+z+5, ++y
B: int(15.8%5)
C: x=y*5=x+z
D: x=25%5.0
答案: 【 x=y+z+5, ++y

12、单选题:
‍C语言程序中,运算对象必须是整型数的运算符是(    )‎
选项:
A: &&
B: /
C: %
D: *
答案: 【 %

13、单选题:
‌若变量已正确定义并赋值,以下不能构成C语句的选项是(    )‎
选项:
A: B++;
B: A=a+b;
C: a=a+b
D: A?a:b;
答案: 【 a=a+b

14、单选题:
​有以下程序:#include  <stdio.h>main(){  char  c1,c2;  c1='A'+'8'-'4';  c2='A'+'8'-'5';  printf( "%c,%dn",c1,c2);}已知字母A的ASCII码为65,程序运行后的输出结果是(    )​
选项:
A: E,68
B: D,69
C: E,D
D: 输出无定值
答案: 【 E,68

过关斩将3-3

1、单选题:
​以下可以将任意一个两位整数n的个位数与十位数对换的表达式为(  )‏
选项:
A:  (n-n/10*10)*10+n/10
B:  n-n/10*10+n/10
C: n/10+(n-n/10)
D: (n-n/10)*10+(n/10)
答案: 【  (n-n/10*10)*10+n/10

2、单选题:
‍设有定义:int  x=7,y=12;,则以下表达式值为3的是(  )​
选项:
A: (y%=x)-(x%=5)
B: y%=(x%=5)
C: y%=x-x%5
D: y%=(x-x%5)
答案: 【 (y%=x)-(x%=5)

3、单选题:
‎若有C语言表达式 2+3*4+7/3,以下选项中叙述正确的执行顺序是(  )‏
选项:
A: 先执行3*4得12,再执行7/3得2.5,最后执行2+12+2.5得16.5
B: 先执行3*4得12,再执行2+12得14,再执行7/3得2,最后执行14+2得16
C: 先执行7/3得2,再执行3*4得12,再执行12+2得14,最后执行2+14得16
D: 先执行2+3得5,再执行5*4得20,再执行20+7得27,最后执行27/3得9
答案: 【 先执行3*4得12,再执行2+12得14,再执行7/3得2,最后执行14+2得16

4、单选题:
​若变量已正确定义并赋值,以下不能构成C语句的选项是(  )​
选项:
A: B++;
B: A=a+b;
C: a=a+b
D: A?a:b;
答案: 【 a=a+b

5、单选题:
‍以下选项中不属于C语言程序运算符的是(    )‏
选项:
A: sizeof
B: <>
C: ( )
D: &&
答案: 【 <>

6、单选题:
​有以下程序    #include <stdio.h>    main()    {         int  sum, pad, pAd;             sum = pad = 5;          pAd = ++sum, pAd++, ++pad;        printf("%dn", pad );    }程序的输出结果是(    )​
选项:
A: 5
B: 6
C: 7
D: 8
答案: 【 6

7、单选题:
‍有以下程序:#include   <stdio.h>main(){ int  x, y, z;  x=y=1;  z=x++,y++,++y;  printf("%d,%d,%dn",x,y,z);}程序运行后的输出结果是(    )​
选项:
A: 2,3,3
B: 2,3,2
C: 2,3,1
D: 2,2,1
答案: 【 2,3,1

8、单选题:
‌若有以下程序段    double x=5.16894;    printf("%fn",  (int)(x*1000+0.5)/(double)1000  );则程序段的输出结果是(    )‌
选项:
A: 5.170000
B: 5.175000
C: 5.169000
D: 5.168000
答案: 【 5.169000

过关斩将3-4

1、单选题:
‍有以下程序#include <stdio.h>main( ){   int c, d;   c = 10^3;     d = 10+3;   printf("%d,%dn", c, d); }程序运行后的输出结果是(  )​
选项:
A: 103,13
B: 13,13
C: 10,13
D: 9,13
答案: 【 9,13

2、单选题:
‎有以下程序#include <stdio.h>main(){   int  c,d;   c = 10 | 5;  d = 10 + 5;   printf("%d,%dn", c, d); }程序的运行结果是(  )‎
选项:
A: 15,15
B: 10,15
C: 5,15
D: 105,15
答案: 【 15,15

3、单选题:
‎有如下程序#include <stdio.h>main(){    int a = 8, b;    b = (a >> 2) % 2;    printf("%d,%dn", a, b);}程序运行后的输出结果是(  )‎
选项:
A: 8,0
B: 4,0
C: 4,1
D: 8,1
答案: 【 8,0

4、单选题:
‌有以下程序#include <stdio.h>main(){   int  a;   a = (int)(-1.53*3);   printf("%dn", a);}程序的运行结果是(  )‌
选项:
A: -4
B: -3
C: -5
D: 结果不确定
答案: 【 -4

5、单选题:
‌有以下程序#include <stdio.h>main(){   int  a;   a = (int)1.99*3;   printf("%dn", a);}程序的运行结果是(  )‌
选项:
A: 3
B: 5
C: 6
D: 结果不确定
答案: 【 3

6、单选题:
‏有如下程序#include   <stdio.h>main( ){    int  a = 9, b;    b = (a >> 3) % 4;    printf("%d,%dn", a, b);}程序运行后的输出结果是(  )‎
选项:
A: 9,1
B: 4,0
C: 4,3
D: 9,3
答案: 【 9,1

7、单选题:
​有以下程序#include <stdio.h>main( ){  int c,d;   c = (13>>1)|1;         d = (13>1)||1;   printf("%d,%dn", c, d);‎​}程序运行后的输出结果是(  )‎
选项:
A: 6,1
B: 1,1
C: 7,1
D: 7,2
答案: 【 7,1

8、单选题:
‍表达式:(int)((double)9/2)- 9%2 的值是(    )‏
选项:
A: 0
B: 3
C: 4
D: 5
答案: 【 3

9、单选题:
‎sizeof( double )是(    )​
选项:
A: 一个整型表达式
B: 一个双精度型表达式
C: 一个不合法的表达式
D: 一种函数调用
答案: 【 一个整型表达式

10、单选题:
‎有以下程序:#include  <stdio.h>main(){  int s,t,A=10; double B=6;  s=sizeof(A); t=sizeof(B);  printf("%d,%dn",s,t);}在VC6.0平台上编译运行,程序运行后的输出结果是(    )​
选项:
A: 10,6
B: 4,4
C: 2,4
D: 4,8
答案: 【 4,8

11、单选题:
‏若有定义语句:int  x=10; ,则表达式x-=x+x的值为(    )‎
选项:
A: 0
B: -20
C: -10
D: 10
答案: 【 -10

12、单选题:
‍表达式 a+=a -= a=9 的值是(    )‍
选项:
A: 18
B: -9
C: 0
D: 9
答案: 【 0

13、单选题:
‎若变量x、y已正确定义并赋值,以下符合C语言语法的表达式是(    )​
选项:
A: x+1=y
B: ++x,y=x--
C: x=x+10=x+y
D: double(x)/10
答案: 【 ++x,y=x--

14、单选题:
‎设有定义:int  x=2;,以下表达式中,值不为6的是(    )‎
选项:
A: 2*x,x+=2
B: x++,2*x
C: x*=(1+x)
D: x*=x+1
答案: 【 2*x,x+=2

15、单选题:
‎若有以下程序    #include <stdio.h>    main(){       int  a=0,b=0,c=0;        c= (a -= ++a), (a+=b, b+=4);       printf("%d,%d,%dn",a,b,c);    }‍‎则程序的输出结果是(    )‍‎‍
选项:
A: 0,4,0
B: 0,4,4
C: 1,4,1
D: 1,4,4
答案: 【 0,4,0

16、单选题:
‎若有以下程序    #include <stdio.h>    main()    {      int a=0,b=0,c=0,d;       c= (a+=b,, b+=a);                /*第4行*/      d=c;;                            /*第5行*/      ;                                /*第6行*/      ;printf("%d,%d,%dn",a,b,c);     /*第7行*/    }‎‎编译时出现错误,你认为出错的是(    )‎
选项:
A: 第4行
B: 第5行
C: 第6行
D: 第7行
答案: 【 第4行

17、单选题:
‌以下叙述中正确的是(    )‌
选项:
A: 复合语句在语法上包含多条语句,其中不能定义局部变量
B: 花括号对{}只能用来表示函数的开头和结尾,不能用于其他目的
C: 空语句就是指程序中的空行
D: 当用scanf从键盘输入数据时,每行数据在没按下回车键(Enter键) 前,可以任意修改
答案: 【 当用scanf从键盘输入数据时,每行数据在没按下回车键(Enter键) 前,可以任意修改

过关斩将3-5

1、单选题:
‍以下叙述正确的是(  )‏
选项:
A: C程序总是以main()作为程序执行的起始行
B: main()函数若不带参数,其后面的一对圆括号可省略
C: 函数体内的定义语句和可执行语句允许任意穿插出现
D: C语言中的语句之间必须用分号作为分隔符
答案: 【 C程序总是以main()作为程序执行的起始行

2、单选题:
‍阅读以下程序#include <stdio.h>main(){      int case ;    float printF;    printf("请输入2个数:");    scanf("%d  %f",&case,&printF );    printf("%d  %fn",case,printF );}该程序在编译时产生错误,其出错原因是(  )​
选项:
A: 定义语句出错,case是关键字,不能用作用户自定义标识符
B: 定义语句出错,printF不能用作用户自定义标识符
C: 定义语句无错,scanf不能作为输入函数使用
D: 定义语句无错,printf不能输出case的值
答案: 【 定义语句出错,case是关键字,不能用作用户自定义标识符

3、单选题:
‎以下叙述中正确的是(  )‏
选项:
A: 复合语句在语法上包含多条语句,其中不能定义局部变量
B: 花括号对{}只能用来表示函数的开头和结尾,不能用于其他目的
C: 空语句就是指程序中的空行
D: 当用scanf从键盘输入数据时,每行数据在没按下回车键(Enter键) 前,可以任意修改
答案: 【 当用scanf从键盘输入数据时,每行数据在没按下回车键(Enter键) 前,可以任意修改

4、单选题:
​以下叙述中正确的是(  )‌
选项:
A: 在scanf函数中的格式控制字符串是为了输入数据用的,不会输出到屏幕上
B: 在使用scanf函数输入整数或实数时,输入数据之间只能用空格来分隔
C: 在printf函数中,各个输出项只能是变量
D: 使用printf函数无法输出百分号%
答案: 【 在scanf函数中的格式控制字符串是为了输入数据用的,不会输出到屏幕上

5、单选题:
​有以下程序    #include <stdio.h>    main()    {        int a=2, c=5;             printf( "a=%%d,b=%%dn", a,c );    }程序的输出结果是(  )‎
选项:
A: a=2,b=5
B: a=%2,b=%5
C: a=%d,b=%d
D: a=%%d,b=%%d
答案: 【 a=%d,b=%d

6、单选题:
‎设有定义:int n = 1234;  double x = 3.1415;则语句 printf("%3d,%1.3fn", n, x); 的输出结果是(  )‍
选项:
A: 1234,3.142
B: 123,3.142
C: 1234,3.141
D: 123,3.141
答案: 【 1234,3.142

7、单选题:
‍有以下程序:#include  <stdio.h>main(){   char  a,b,c,d;   scanf("%c%c",&a, &b);   c=getchar();    d=getchar();   printf("%c%c%c%cn",a,b,c,d);}当执行程序时,按下列方式输入数据(从第1列开始,<CR>代表回车,注意:回车也是一个字符)12<CR>34<CR>则输出结果是(  )。​
选项:
A: 1234
B: 12
C: 1234
D: 123
答案: 【 123

8、单选题:
‏若要求从键盘读入含有空格字符的字符串,应使用函数‎
选项:
A: getchar()
B: getc()
C: gets()
D: scanf()
答案: 【 gets()

9、单选题:
‏若有以下程序    #include <stdio.h>    main()    {      int a=0,b=0,c=0,d;       c= (a+=b,, b+=a);                /*第4行*/      d=c;;                            /*第5行*/      ;                                /*第6行*/      ;printf("%d,%d,%dn",a,b,c);     /*第7行*/    }编译时出现错误,你认为出错的是(    )‎
选项:
A: 第4行
B: 第5行
C: 第6行
D: 第7行‍
答案: 【 第4行

10、单选题:
​若有以下程序    #include <stdio.h>    main()    {  int  a=0,b=0,c=0       c= (a+=++b, b+=4);       printf("%d,%d,%dn",a,b,c);    }则程序的输出结果是(    )‍
选项:
A: 1,5,1
B: 1,5,5
C: -1,4,4
D: -1,4,-1
答案: 【 1,5,5

11、单选题:
‏以下叙述中正确的是(    )‍‏
选项:
A: 在scanf函数的格式串中,必须有与输入项一一对应的格式转换说明符
B: 只能在printf函数中指定输入数据的宽度,而不能在scanf函数中指定输入数据占的宽度
C: scanf函数中的字符串,是提示程序员的,输入数据时不必管它
D: 复合语句也被称为语句块,它至少要包含两条语句
答案: 【 在scanf函数的格式串中,必须有与输入项一一对应的格式转换说明符

12、单选题:
‎  #include <stdio.h>    main()    {         char  c1,c2,c3,c4,c5,c6;        scanf("%c%c%c%c", &c1,&c2,&c3,&c4);        c5=getchar();            c6=getchar();        putchar(c1);                 putchar(c2);        printf("%c%cn",c5,c6);    }程序运行后,若从键盘输入(从第1列开始)      123<回车>     45678<回车>则输出结果是(    )‏
选项:
A: 1245
B: 1256
C: 1278
D: 1267
答案: 【 1245

13、单选题:
​有以下程序:#include  <stdio.h>main(){   char  a,b,c,d;   scanf("%c%c",&a, &b);   c=getchar();    d=getchar();   printf("%c%c%c%cn",a,b,c,d);}当执行程序时,按下列方式输入数据(从第1列开始,<CR>代表回车,注意:回车也是一个字符)12<CR>34<CR>则输出结果是(    )​
选项:
A: 1234
B: 12
C: 1234
D: 123
答案: 【 123

14、单选题:
‎若要求从键盘读入含有空格字符的字符串,应使用函数(    )‏
选项:
A: getchar()
B: getc()
C: gets()
D: scanf()
答案: 【 gets()

15、单选题:
‍以下不能输出字符A的语句是(注:字符A的ASCII码值为65,字符a的ASCII码值为97)(    )​
选项:
A: printf ("%c n", 'a'-32);
B: printf ("%d n", 'A');
C: printf ("%c n", 65);
D: printf ("%c n", 'B'-1);
答案: 【 printf ("%d n", 'A');

16、单选题:
‍以下叙述中正确的是(    )​
选项:
A: 在scanf函数中的格式控制字符串是为了输入数据用的,不会输出到屏幕上
B: 在使用scanf函数输入整数或实数时,输入数据之间只能用空格来分隔
C: 在printf函数中,各个输出项只能是变量
D: 使用printf函数无法输出百分号%
答案: 【 在scanf函数中的格式控制字符串是为了输入数据用的,不会输出到屏幕上

17、单选题:
​有以下程序    #include <stdio.h>    main()    {        int a=2, c=5;             printf( "a=%%d,b=%%dn", a,c );    }程序的输出结果是(    )​
选项:
A: a=2,b=5
B: a=%2,b=%5
C: a=%d,b=%d
D: a=%%d,b=%%d
答案: 【 a=%d,b=%d

18、单选题:
‍以下叙述中正确的是(    )‌
选项:
A: 由printf输出的数据都隐含左对齐
B: scanf和printf是C语言提供的输入和输出语句
C: 赋值语句是一种执行语句,必须放在函数的可执行部分
D: 由printf输出的数据的实际精度是由格式控制中的域宽和小数的域宽来完全决定的
答案: 【 赋值语句是一种执行语句,必须放在函数的可执行部分

19、单选题:
‌有以下程序:#include  <stdio.h>main(){  int  a=1,b=0;  printf("%d,",b=a+b);  printf("%dn",a=2*b);程序运行后的输出结果是(    )‌
选项:
A: 1,2‍
B: 1,0
C: 3,2
D: 0,0
答案: 【 1,2‍

20、单选题:
‎有以下程序:#include  <stdio.h>main(){  int  a1,a2;  char c1,c2;  scanf("%d%c%d%c",&a1,&c1,&a2,&c2);  printf("%d,%c,%d,%c",a1,c1,a2,c2);}若想通过键盘输入,使得a1的值为12,a2的值为34,c1的值为字符a,c2的值为字符b,程序输出结果是:12,a,34,b  则正确的输入格式是(以下_代表空格,<CR>代表回车)(    )​
选项:
A: 12_a34_b<CR>
B: 12_a_34_b<CR>
C: 12,a,34,b<CR>
D: 12a34b<CR>
答案: 【 12a34b<CR>

高手闯关3-1

1、单选题:
‌关于C语言的变量名,以下叙述正确的是(  )​
选项:
A: 变量名不可以与关键字同名
B: 变量名不可以与预定义标识符同名
C: 变量名必须以字母开头
D: 变量名是没有长度限制的
答案: 【 变量名不可以与关键字同名

2、单选题:
‌以下选项中可用作C语言中合法用户标识符的是(  )‌
选项:
A: _123
B: void
C: -abc
D: 2a
答案: 【 _123

3、单选题:
‏以下关于C语言的叙述中正确的是(    )‏
选项:
A: C语言的数值常量中夹带空格不影响常量值的正确表示
B: C语言中的变量可以在使用之前的任何位置进行定义
C: 在C语言算术表达式的书写中,运算符两侧的运算数类型必须一致
D: C语言中的注释不可以夹在变量名或关键字的中间
答案: 【 C语言中的注释不可以夹在变量名或关键字的中间

4、单选题:
‏以下选项中不合法的标识符是(    )‎
选项:
A: &a
B: FOR
C: print
D: 00
答案: 【 &a

5、单选题:
​按照C语言规定的用户标识符命名规则,不能出现在标识符中的是(    )。‎
选项:
A: 大写字母
B: 下划线
C: 数字字符
D: 连接符
答案: 【 连接符

6、单选题:
‍以下选项中,能用作用户标识符的是(    )‍
选项:
A: _0_
B: 8_8
C: void
D: unsigned
答案: 【 _0_

7、单选题:
‎下列定义变量的语句中错误的是(    )‎
选项:
A: int  _int;
B: double  int_;
C: char  For;
D: float  US$;
答案: 【 float  US$;

8、单选题:
‏以下选项中,不合法的C语言用户标识符是(    )‍
选项:
A: a_b
B: AaBc
C: a--b
D: _1
答案: 【 a--b

9、单选题:
‌以下选项中正确的定义语句是(    )‍
选项:
A: double, a, b;
B: double  a=b=7;
C: double  a; b;
D: double  a=7, b=7;
答案: 【 double  a=7, b=7;

10、单选题:
‎设有定义:int x=11,y=12,z=0;,以下表达式值不等于12的是(  )‍
选项:
A: (z,x,y)
B: (z=x,y)
C: z=(x,y)
D: z=(x==y)
答案: 【 z=(x==y)

11、单选题:
‏设变量m为float类型,变量n为int类型,则以下能实现将m中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是(  )‏
选项:
A: m=(m*100+0.5)/100.0
B: n=m*100+0.5, m=n/100.0
C: n=m/100+0.5, m=n*100.0
D: m=m*100+0.5/100.0
答案: 【 n=m*100+0.5, m=n/100.0

12、单选题:
‌以下程序段中的变量已定义为int类型sum = pad = 5;  pAd = sum++, pAd++, ++pAd;      printf( "%dn", pad );程序段的输出结果是(  )‍‎
选项:
A: 6
B: 4
C: 5
D: 程序出错
答案: 【 5

13、单选题:
‌以下选项中正确的定义语句是(  )‎
选项:
A: double, a, b;
B: double  a=b=7;
C: double  a; b;
D: double  a=7, b=7;
答案: 【 double  a=7, b=7;

14、单选题:
‏有如下程序#include   <stdio.h>main( ){    int  x = 072;    printf("X=%d.n", x+1);}程序运行后的输出结果是(  )​
选项:
A: X=115
B: X=73
C: X=59.
D: X=72.
答案: 【 X=59.

15、单选题:
​以下不能输出小写字母a的选项是(  )‍
选项:
A: printf("%cn","a");
B: printf("%cn",'A'+32);
C: putchar(97);
D: putchar('a');
答案: 【 printf("%cn","a");

16、单选题:
‌若有以下程序    #include <stdio.h>    main()    {         char  c1, c2;       c1='C'+'8'-'3';   c2='9'-'0';       printf("%c  %dn", c1, c2);    }则程序的输出结果是(  )​
选项:
A: H  '9'
B: H  9
C: F  '9'
D: 表达式不合法输出无定值
答案: 【 H  9

17、单选题:
​若有定义语句:    int  x=12, y=8, z;在其后执行语句    z= 0.9+x/y;则z的值为(    )​
选项:
A: 1
B: 2‍
C: 1.9
D: 2.4
答案: 【 1

18、单选题:
‎表达式3.6-5/2+1.2+5%2的值是(    )‎
选项:
A: 4.3
B: 4.8
C: 3.3
D: 3.8
答案: 【 3.8

19、单选题:
‌有以下定义:    int  a;    long  b;    double  x, y; 则以下选项中正确的表达式是(    )‏
选项:
A: a=x<>y
B: a%(int)(x-y)
C: (a*y)%b
D: y=x+y=x
答案: 【 a%(int)(x-y)

20、单选题:
‌设变量已正确定义并赋值,以下正确的表达式是(    )‎
选项:
A: x=y+z+5, ++y
B: int(15.8%5)
C: x=y*5=x+z
D: x=25%5.0
答案: 【 x=y+z+5, ++y

21、单选题:
‍C语言程序中,运算对象必须是整型数的运算符是(    )‎
选项:
A: &&
B: /
C: %
D: *
答案: 【 %

22、单选题:
‎若变量已正确定义并赋值,以下不能构成C语句的选项是(    )‌
选项:
A: B++;
B: A=a+b;
C: a=a+b
D: A?a:b;
答案: 【 a=a+b

23、单选题:
​有以下程序:#include  <stdio.h>main(){  char  c1,c2;  c1='A'+'8'-'4';  c2='A'+'8'-'5';  printf( "%c,%dn",c1,c2);}已知字母A的ASCII码为65,程序运行后的输出结果是(    )‎
选项:
A: E,68
B: D,69
C: E,D
D: 输出无定值
答案: 【 E,68

24、单选题:
‍以下可以将任意一个两位整数n的个位数与十位数对换的表达式为(  )‌
选项:
A: (n-n/10*10)*10+n/10
B: n-n/10*10+n/10
C: n/10+(n-n/10)
D: (n-n/10)*10+(n/10)
答案: 【 (n-n/10*10)*10+n/10

25、单选题:
​设有定义:int  x=7,y=12;,则以下表达式值为3的是(  )‍
选项:
A:  (y%=x)-(x%=5)
B: y%=(x%=5)
C: y%=x-x%5
D: y%=(x-x%5)
答案: 【  (y%=x)-(x%=5)

26、单选题:
‌若有C语言表达式 2+3*4+7/3,以下选项中叙述正确的执行顺序是(  )‏
选项:
A: 先执行3*4得12,再执行7/3得2.5,最后执行2+12+2.5得16.5
B: 先执行3*4得12,再执行2+12得14,再执行7/3得2,最后执行14+2得16
C: 先执行7/3得2,再执行3*4得12,再执行12+2得14,最后执行2+14得16
D: 先执行2+3得5,再执行5*4得20,再执行20+7得27,最后执行27/3得9
答案: 【 先执行3*4得12,再执行2+12得14,再执行7/3得2,最后执行14+2得16

27、单选题:
‌以下选项中不属于C语言程序运算符的是(    )‍
选项:
A: sizeof
B: <>
C: ( )
D: &&
答案: 【 <>

28、单选题:
‎若变量已正确定义并赋值,以下不能构成C语句的选项是(  )‌
选项:
A: B++;
B: A=a+b;
C: a=a+b
D: A?a:b;
答案: 【 a=a+b

29、单选题:
‌有以下程序    #include <stdio.h>    main()    {         int  sum, pad, pAd;             sum = pad = 5;          pAd = ++sum, pAd++, ++pad;        printf("%dn", pad );    }程序的输出结果是(    )‍
选项:
A: 5
B: 6
C: 7
D: 8
答案: 【 6

30、单选题:
​有以下程序:#include   <stdio.h>main(){ int  x, y, z;  x=y=1;  z=x++,y++,++y;  printf("%d,%d,%dn",x,y,z);}程序运行后的输出结果是(    )‍
选项:
A: 2,3,3
B: 2,3,2
C: 2,3,1
D: 2,2,1
答案: 【 2,3,1

31、单选题:
‏若有以下程序段    double x=5.16894;    printf("%fn",  (int)(x*1000+0.5)/(double)1000  );则程序段的输出结果是(    )‏
选项:
A: 5.170000
B: 5.175000
C: 5.169000
D: 5.168000
答案: 【 5.169000

32、单选题:
​有以下程序#include <stdio.h>main( ){   int c, d;   c = 10^3;     d = 10+3;   printf("%d,%dn", c, d); }程序运行后的输出结果是(  )‏
选项:
A: 103,13
B: 13,13
C: 10,13
D: 9,13
答案: 【 9,13

33、单选题:
‏有以下程序#include <stdio.h>main(){   int  c,d;   c = 10 | 5;  d = 10 + 5;   printf("%d,%dn", c, d); }程序的运行结果是(  )‏
选项:
A: 15,15
B: 10,15
C: 5,15
D: 105,15
答案: 【 15,15

34、单选题:
​有如下程序#include <stdio.h>main(){    int a = 8, b;    b = (a >> 2) % 2;    printf("%d,%dn", a, b);}程序运行后的输出结果是(  )‍
选项:
A: 8,0
B: 4,0
C: 4,1
D: 8,1
答案: 【 8,0

35、单选题:
‌有以下程序#include <stdio.h>main(){   int  a;   a = (int)(-1.53*3);   printf("%dn", a);}程序的运行结果是(  )‎
选项:
A: -4
B: -3
C: -5
D: 结果不确定
答案: 【 -4

36、单选题:
‏有以下程序#include <stdio.h>main(){   int  a;   a = (int)1.99*3;   printf("%dn", a);}程序的运行结果是(  )​
选项:
A: 3
B: 5
C: 6
D: 结果不确定
答案: 【 3

37、单选题:
​有如下程序#include   <stdio.h>main( ){    int  a = 9, b;    b = (a >> 3) % 4;    printf("%d,%dn", a, b);}程序运行后的输出结果是(  )‏
选项:
A: 9,1
B: 4,0
C: 4,3
D: 9,3
答案: 【 9,1

38、单选题:
‌有以下程序#include <stdio.h>main( ){  int c,d;   c = (13>>1)|1;         d = (13>1)||1;   printf("%d,%dn", c, d);‏‌}程序运行后的输出结果是(  )‏
选项:
A: 6,1
B: 1,1
C: 7,1
D: 7,2
答案: 【 7,1

39、单选题:
‍表达式:(int)((double)9/2)- 9%2 的值是(    )‎
选项:
A: 0
B: 3
C: 4
D: 5
答案: 【 3

40、单选题:
‏sizeof( double )是(    )‏
选项:
A: 一个整型表达式
B: 一个双精度型表达式
C: 一个不合法的表达式
D: 一种函数调用
答案: 【 一个整型表达式

41、单选题:
‏有以下程序:#include  <stdio.h>main(){  int s,t,A=10; double B=6;  s=sizeof(A); t=sizeof(B);  printf("%d,%dn",s,t);}在VC6.0平台上编译运行,程序运行后的输出结果是(    )‎
选项:
A: 10,6
B: 4,4
C: 2,4
D: 4,8
答案: 【 4,8

42、单选题:
‏若有定义语句:int  x=10; ,则表达式x-=x+x的值为(    )‏
选项:
A: 0
B: -20
C: -10
D: 10
答案: 【 -10

43、单选题:
​表达式 a+=a -= a=9 的值是(    )‎
选项:
A: 18
B: -9
C: 0
D: 9
答案: 【 0

44、单选题:
‎若变量x、y已正确定义并赋值,以下符合C语言语法的表达式是(    )​
选项:
A: x+1=y
B: ++x,y=x--
C: x=x+10=x+y
D: double(x)/10
答案: 【 ++x,y=x--

45、单选题:
‌设有定义:int  x=2;,以下表达式中,值不为6的是(    )‎
选项:
A: 2*x,x+=2
B: x++,2*x
C: x*=(1+x)
D: x*=x+1
答案: 【 2*x,x+=2

46、单选题:
‌若有以下程序    #include <stdio.h>    main(){       int  a=0,b=0,c=0;        c= (a -= ++a), (a+=b, b+=4);       printf("%d,%d,%dn",a,b,c);    }‍‌则程序的输出结果是(    )‍
选项:
A: 0,4,0
B: 0,4,4
C: 1,4,1
D: 1,4,4
答案: 【 0,4,0

47、单选题:
‎若有以下程序    #include <stdio.h>    main()    {      int a=0,b=0,c=0,d;       c= (a+=b,, b+=a);                /*第4行*/      d=c;;                            /*第5行*/      ;                                /*第6行*/      ;printf("%d,%d,%dn",a,b,c);     /*第7行*/    }‍‎编译时出现错误,你认为出错的是(    )‍
选项:
A: 第4行
B: 第5行
C: 第6行
D: 第7行
答案: 【 第4行

48、单选题:
‍以下叙述中正确的是(    )‏
选项:
A: 复合语句在语法上包含多条语句,其中不能定义局部变量
B: 花括号对{}只能用来表示函数的开头和结尾,不能用于其他目的
C: 空语句就是指程序中的空行
D: 当用scanf从键盘输入数据时,每行数据在没按下回车键(Enter键) 前,可以任意修改
答案: 【 当用scanf从键盘输入数据时,每行数据在没按下回车键(Enter键) 前,可以任意修改

49、单选题:
​以下叙述正确的是(  )‌
选项:
A: C程序总是以main()作为程序执行的起始行
B: main()函数若不带参数,其后面的一对圆括号可省略
C: 函数体内的定义语句和可执行语句允许任意穿插出现
D: C语言中的语句之间必须用分号作为分隔符
答案: 【 C程序总是以main()作为程序执行的起始行

50、单选题:
​阅读以下程序#include <stdio.h>main(){      int case ;    float printF;    printf("请输入2个数:");    scanf("%d  %f",&case,&printF );    printf("%d  %fn",case,printF );}该程序在编译时产生错误,其出错原因是(  )​
选项:
A: 定义语句出错,case是关键字,不能用作用户自定义标识符
B: 定义语句出错,printF不能用作用户自定义标识符
C: 定义语句无错,scanf不能作为输入函数使用
D: 定义语句无错,printf不能输出case的值
答案: 【 定义语句出错,case是关键字,不能用作用户自定义标识符

51、单选题:
‏以下叙述中正确的是(  )‏
选项:
A: 复合语句在语法上包含多条语句,其中不能定义局部变量
B: 花括号对{}只能用来表示函数的开头和结尾,不能用于其他目的
C: 空语句就是指程序中的空行
D: 当用scanf从键盘输入数据时,每行数据在没按下回车键(Enter键) 前,可以任意修改
答案: 【 当用scanf从键盘输入数据时,每行数据在没按下回车键(Enter键) 前,可以任意修改

52、单选题:
​以下叙述中正确的是(  )‍
选项:
A: 在scanf函数中的格式控制字符串是为了输入数据用的,不会输出到屏幕上
B: 在使用scanf函数输入整数或实数时,输入数据之间只能用空格来分隔
C: 在printf函数中,各个输出项只能是变量
D: 使用printf函数无法输出百分号%
答案: 【 在scanf函数中的格式控制字符串是为了输入数据用的,不会输出到屏幕上

53、单选题:
‍有以下程序    #include <stdio.h>    main()    {        int a=2, c=5;             printf( "a=%%d,b=%%dn", a,c );    }程序的输出结果是(  )‌
选项:
A: a=2,b=5
B: a=%2,b=%5
C: a=%d,b=%d
D: a=%%d,b=%%d
答案: 【 a=%d,b=%d

54、单选题:
‍设有定义:int n = 1234;  double x = 3.1415;则语句 printf("%3d,%1.3fn", n, x); 的输出结果是(  )‏
选项:
A: 1234,3.142
B: 123,3.142
C: 1234,3.141
D: 123,3.141
答案: 【 1234,3.142

55、单选题:
‌有以下程序:#include  <stdio.h>main(){   char  a,b,c,d;   scanf("%c%c",&a, &b);   c=getchar();    d=getchar();   printf("%c%c%c%cn",a,b,c,d);}当执行程序时,按下列方式输入数据(从第1列开始,<CR>代表回车,注意:回车也是一个字符)12<CR>34<CR>则输出结果是(  )。​
选项:
A: 1234
B: 12
C: 1234
D: 123
答案: 【 123

56、单选题:
‏若要求从键盘读入含有空格字符的字符串,应使用函数​
选项:
A: getchar()
B: getc()
C: gets()
D: scanf()

剩余75%内容付费后可查看

发表评论

电子邮件地址不会被公开。 必填项已用*标注