翰子昂阶段性测试_S1阶段
——C 方向理论测试试题A卷
姓名: 准考证号: 身份证号:
本理论考试试卷,共40题,每小题2.5分,共100分。请考生将姓名、考试阶段、试卷类型、准考证号涂在答题卡上。并将每道题的正确选项涂写在答题卡相应位置上,答在试卷上不得分,错选、多选、少选或未选均不得分。考试时间为60分钟,考试完毕后请将本试卷与答题卡一同上交,不交回试卷者成绩无效。
1. 以下正确的C语言自定义标识符是_A_____。
A. _1a B. 2a_
C. do D. a.12
2. 在C语言中,错误的常数表示是___D____。
A. 0L B.-0x6aL
C. '6' D. 1.234E3.5
3. 设int a, x=2; 执行语句a=x>0?3*x:x=10;后,变量x的值是_____B__。
A. 1 B. 2
C. 6 D. 10
4.设有以下程序段:
int x=2,y=2,z=0,a;
a=++x||++y&&z++;
printf("%d,%d,%d\n",x,y,z);
执行后输出的结果是____C_____。
A. 2, 2, 0 B. 3, 3,1
C. 3, 2, 0 D. 3, 2, 1
5. 在C语言中,字符串"\\TOP\t\65\""的长度是___B____。
A. 5 B.7
C. 8 D. 12
6. 设float x,由键盘输入:12.45, 能正确读入数据的输入语句是_A________。
A. scanf("%5f",&x) B. scanf("%5d",&x);
C. scanf("%f",x); D. scanf("%s",&x);
7.逗号表达式a=2*6,a*3,a+5的值是__B_______。
A. 12 B. 17
C.36 D. 41
8. C语言程序中,整型常量的书写形式不包括_____A____。
A. 二进制 B. 八进制
C. 十进制 D. 十六进制
9. 在C语言中,下列运算符中结合性属于自右向左的是__B_______。
A. && B. -
C.<< D. ->
10. 设int x;,则与计算︱x︱等价的表达式是_____B____。
A. x>0?-x:x B. x>0?x:-x
C. x<0?x:-x D. x<0?-x:-x
11. 执行下面的程序段后,k的值是___B____。
int k=1,n=325;
do { k*=n%10;n/=10;}while(n);
A. 3 B. 30
C. 523 D. 325
12. 表达式的值为0的是_____C____。
A. 5/5%5 B. 5>2
C. !4 D. 0x7&&7
13. 设int a=11, b=2;执行下述程序段后,变量a和b的值分别是_B______。
do
{ a/=b++;
}while(a>b);
A. 1,3 B. 1,4
C. 2,3 D. 2,4
14. 在C语言中,下列错误的说法是___C____。
A. 函数可以递归调用
B. 不允许在函数中再定义函数
C. 递归程序不可能用非递归算法实现
D. 对于continue语句,可以通过改变程序的结构而不使用它
15.int a[2][3]={{1},{2,3}};,则a[1][0]的值是____C_____。
A.0 B. 1
C. 2 D. 3
16. 以下对二维数组a的正确说明是__C_______。.
A. int a[3][]; B. float a[][4];
C. double a[3][4]; D. float a(3)(4);
17.设char s[10]= "abcd",t[]="12345";,则s和t在内存中分配的字节数分别是__D_____。
A.6和5 B. 6和6
C. 10和5 D. 10和6
18. switch(表达式)语句中的“表达式”,允许的类型是____C_____。
A.float, int B.float, int, char
C. int, char D. char, double
19. 在C语言中,形参的隐含存储类别是_____A____。
A. auto B. static
C. extern D. register
20. 下列属于文件包含的命令是___C______。
A. #define N 25 B. #endif
C. #include "stdio.h" D. #else
21. 设int i,j;
for(i=5;i;i--)
for(j=0;j<4;j++) {…}
则循环体执行次数是_C_______。
A. 5 B.4
C. 20 D.无限次
22.若有以下定义和语句:
char strl[]="string", str2[5];
则用以复制字符串的正确方法是___B____。
A. strcpy(str2,"Hello");
B. strcpy(strl,"Hello");
C. str2=str1;
D. str1="Hello";
23.正确的变量定义是___A_____。
A. unsigned long d=1000;
B. float m1=m2=10.0;
C. char c1='A',c2=A;
D. double x=0.618,x=3.14;
24.下面程序的输出结果是____C___。
#include <stdio.h>
void main()
{ int s,k;
for(s=1,k=2;k<5;k++)
s+=k;
printf("%d\n",s);
}
A. 1 B. 9
C. 10 D. 15
25.下列描述中不正确的是___C____。
A. 字符型数组中可以存放字符串
B. 可以对字符型数组进行整体输入、输出
C. 可以对实型数组进行整体输入、输出
D. 不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值
26. 在计算机中存储数据的最小单位是:(提示:“最小存储”单位和“最小表示”单位的区别)A
A、字节
B、 位
C、字
D、KB
27. 计算机最主要的工作特点是______A。
A、存储程序与自动控制
B、高速度与高精度
C、可靠性与可用性
D、有记忆能力
28. 下列软件中,___B_一定是系统软件。
A、自编的一个C程序,功能是求解一个一元二次方程
B、WINDOWS操作系统
C、用汇编语言编写的一个练习程序
D、存储有计算机基本输入输出系统的ROM芯片
29. 在存储一个汉字内码的两个字节中,每个字节的最高位是___A____。(提示:每个汉字需要2个字节数,最高位怎么来区别ASCLL码,一般ASCLL码内码的最高位为“0”)
A、1和1
B、1和0
C、0和1
D、0和0
30. 一个C程序的执行是从____A_。
A、本程序的main函数开始,到main函数结束√
B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
C、本程序的main函数开始,到本程序文件的最后一个函数结束
D、本程序文件的第一个函数开始,到本程序main函数结束
31.以下叙述正确的是:C
A、在C程序中,main函数必须位于程序的最前面
B、C程序的每行中只能写一条语句
C、C语言本身没有输入输出语句
D、在对一个C程序进行编译的过程中,可发现注释中的拼写错误×
32.以下叙述不正确的是。D
A、一个C源程序可由一个或多个函数组成
B、一个C源程序必须包含一个main函数
C、C程序的基本组成单位是函数
D、在C程序中,注释说明只能位于一条语句的后面
33.C语言规定:在一个源程序中,main函数的位置 。C
A、必须在最开始
B、必须在系统调用的库函数的后面
C、可以任意
D、必须在最后
34.一个C语言程序是由B
A、一个主程序和若干子程序组成 B、函数组成
C、若干过程组成 D、若干子程序组成
35.在C语言中(以16位PC机为例),5种基本数据类型的存储空间长度的排列顺序为A
A、char<int <1ong int<=float<double
B、char=int<1ong int<=float<double
C、char< int <1ong int=float=double
D、char=int =1ong int<=float<double
36.若x,i,j和k都是int型变量,则执行下面表达式后x的值为C
x=(i=4,j=16,k=32)
A、4 B、16 C、32 D、52
37.假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是:B
A、7 B、8 C、6 D、2
38.下列四组选项中,均不是C语言关键字的选项是A
A、define B、getc C、include D、while
39.下面四个选项中,均是C语言关键字的选项是 B
A、auto B、switch C、signed D、if
enum typedef union struct
include continue scanf type
40.下面四个选项中,均是不合法的用户标识符的选项是。C
A、 A B、float C、b-a D、一123
P_0 1a0 goto temp
do 一A int INT