第一章 绪论

第一章单元测验

1、单选题:
‍以下哪个是冯诺伊曼的思想​
选项:
A: 计算机应采用二进制
B: 存储程序的思想
C: 计算机由硬件和软件组成
D: 软件分为系统软件和应用软件
答案: 【 存储程序的思想

2、单选题:
‌关于软件,下列说法不正确的是_____________。‎
选项:
A: 软件的核心是程序
B: 软件就是程序
C: 软件是程序和文档的总和
D: 软件不能缺少文档
答案: 【 软件就是程序

3、单选题:
‌以下关于源程序与目标程序,不正确的是‎
选项:
A: 用机器语言编写的源程序就是目标程序
B: 汇编语言写的源程序需要汇编为目标程序
C: C语言源程序需要编译为目标程序
D: 所有高级语言的编译器均一样
答案: 【 所有高级语言的编译器均一样

4、单选题:
‎第一个结构化程序设计语言是_________________。‎
选项:
A: PASCAL
B: C
C: BASIC
D: FORTRAN
答案: 【 PASCAL

5、单选题:
‌贝尔实验室的Dennis M. Ritchie于1973年用C语言重写了__________操作系统。‍
选项:
A: DOS
B: UNIX
C: WINDOWS
D: LINUX
答案: 【 UNIX

6、单选题:
‏如果计算机有32根地址总线,其存储器的最大存储容量为_______________。​
选项:
A: 64MB
B: 32GB
C: 4GB
D: 8GB
答案: 【 4GB

7、单选题:
‏二进制数10101010101所对应的八进制数为________________。‎
选项:
A: 2525
B: 5252
C: 555
D: 222
答案: 【 2525

8、单选题:
‎二进制数10101010101所对应的十六进制数为__________________。​
选项:
A: 222
B: 555
C: 2525
D: 5252
答案: 【 555

9、单选题:
‎以下哪个是C程序的基本单位‌
选项:
A: 表达式
B: 语句
C: 函数
D: 文件
答案: 【 函数

10、单选题:
​C程序编译之后生成的文件后缀为_________________。‌
选项:
A: .exe
B: .obj
C: .c
D: .bin
答案: 【 .obj

11、填空题:
‏C程序有且只有一个_____________函数。‏
答案: 【 main

12、填空题:
‌C程序中使用scanf和printf函数,必须要包含一个头文件_____________。‎
答案: 【 stdio.h

13、填空题:
‏十进制数348所对应的八进制数为______________。​
答案: 【 534

14、填空题:
‍C程序的完整开发过程包括:编辑、_________、链接和运行。‍
答案: 【 编译

15、填空题:
‍C源程序中每条语句必须以_______号结束。‌
答案: 【 分 ;

随堂测验:C语言的符号和开发环境

1、判断题:
​C语言源程序可以存在多个主函数。​
选项:
A: 正确
B: 错误
答案: 【 错误

2、判断题:
‎C源程序中,用户可以重新定义系统标识符。‍
选项:
A: 正确
B: 错误
答案: 【 错误

3、判断题:
‏C源程序的基本单位是函数。‍
选项:
A: 正确
B: 错误
答案: 【 正确

4、判断题:
‏C语言程序设计必须在一定的开发环境下进行。​
选项:
A: 正确
B: 错误
答案: 【 正确

随堂测验:内存与进制的知识

1、单选题:
‌如果计算机有32根地址总线,则其存储器的最大容量可达____________。‎
选项:
A: 32MB
B: 32GB
C: 4GB
D: 8GB
答案: 【 4GB

2、单选题:
‍十进制数346所对应的八进制数为___________。​
选项:
A: 235
B: 532
C: 237
D: 732
答案: 【 532

3、判断题:
‎存储器的容量是由数据总线决定的。​
选项:
A: 正确
B: 错误
答案: 【 错误

4、判断题:
​在进制转换中,一位八进制数相当于三位二进制数,一位十六进制数相当于四位二进制数。‎
选项:
A: 正确
B: 错误
答案: 【 正确

随堂测验:计算机、程序及程序设计

1、单选题:
‏“程序存储思想”是__________提出来的。‍
选项:
A: Dennis M. Ritchie
B: Bell   
C: Von Neumann
D: Ken Thompsom
答案: 【 Von Neumann

2、单选题:
​以下哪一种不是从源程序到目标程序的翻译方式_________。‎
选项:
A: 编辑
B: 编译
C: 汇编
D: 解释
答案: 【 编辑

3、判断题:
‍C语言是第一个结构化的程序设计语言​
选项:
A: 正确
B: 错误
答案: 【 错误

第二章 数据类型、常量与变量

变量定义与使用的测试

1、判断题:
#include<stdio.h> ‎ int main( ) ‎ {  ‎ scanf("%3d%f",&x,&y);‎ int x; ‎    float y; ‎  printf(“%d,%fn”,x,y);‎    return 0;‎ } ‎该段代码编译没有错误,可正常运行。‎‍‎
选项:
A: 正确
B: 错误
答案: 【 错误

2、填空题:
请写出下面程序的输出结果。  ‍#include<stdio.h> ‍int main( )   ‍{    ‍ short int a=32767,b; ‍b=a+1; ‍printf("a=%d,b=%dn",a,b);‍return 0;‍}‍‏‍
答案: 【 a=32767,b=-32768

3、填空题:
请写出下面程序的输出结果。 ‏#include<stdio.h> ‏int main() ‏{  char ch='A'+10; ‏ printf("C=%c,C=%d,c=%c,c=%dn",ch,ch,ch+32,ch+32);‏   return 0;‏}    ‏​‏
答案: 【 C=K,C=75,c=k,c=107##%_YZPRLFH_%##C=K, C=75, c=k, c=107

4、填空题:
有以下程序‎#include  <stdio.h>‎int main()‎{  char c1=’A’+’8’-‘4’;‎char c2=’A’+’8’-‘5’;‎printf(“%c,%dn”,c1,c2);‎return 0;‎}‎‏‎
答案: 【 E,68

5、填空题:
在C语言中,用关键字__ __定义单精度实型变量。‍​‍
答案: 【 float

基本数据类型及常量

1、单选题:
‍下列哪一个是合法的实型常量            。‍
选项:
A: 8E3.1
B: E5
C: 234.
D: 234
答案: 【 234.

2、单选题:
‎下列不属于字符型常量的是             。‎
选项:
A: 'a'
B: "s"
C: '117'
D: 'x86'
答案: 【 "s"

3、单选题:
‍下列哪一个字符与其他三个字符不相等           。‏
选项:
A: 'a'
B: 'A'
C: 'x41'
D: '101'
答案: 【 'a'

4、单选题:
‍下面四个选项中,均是合法浮点数的选项是_____。‌
选项:
A: +1e+1  5e-9.4  03e2
B: -.60  12e-4  -8e5
C: 123e  1.2e-.4  +2e-1
D: -e3   .8e-4  5.e-0
答案: 【 -.60  12e-4  -8e5

5、单选题:
‎以下选项中可作为C语言合法整数的是_______。‏
选项:
A: 11010B
B: 0583
C: x2b2
D: 0Xafb
答案: 【 0Xafb

第二章测验

1、单选题:
‌下列不正确的转义字符是______。‍
选项:
A: ’\’
B: ’’’
C: ’81’
D: ’’
答案: 【 ’81’

2、单选题:
‎下列变量定义及初始化中,错误的是_______。​
选项:
A: int a=0xFF
B: double a=1.2e0.5
C: long a=2L
D: char a=’72’
答案: 【 double a=1.2e0.5

3、单选题:
‌若函数中有定义语句:int k;,则下列说法正确的是_______。​
选项:
A: 系统将自动给k赋初值0
B: 这时k中值无定义
C: 系统将自动给k赋初值-1
D: 这时k中无任何值
答案: 【 这时k中值无定义

4、单选题:
‌关于C语言中数的表示,以下叙述正确的是________。​
选项:
A: 只有整型数在允许范围内能精确无误的表示,实型数会有误差
B: 只要在在允许范围内整型和实型都能精确表示
C: 只有实型数在允许范围内能精确无误的表示,整型数会有误差
D: 只有八进制表示的数在不会有误差
答案: 【 只有整型数在允许范围内能精确无误的表示,实型数会有误差

5、单选题:
‍C语言中,“x5d”在内存中占用的字节数是_______。‌
选项:
A: 2
B: 5
C: 4
D: 1
答案: 【 2

6、单选题:
‍C语言中,’x5d’在内存中占用的字节数是_______。​
选项:
A: 2
B: 5
C: 4
D: 1
答案: 【 1

7、单选题:
‎以下正确的 C 语言变量名是_______。‎
选项:
A: for
B: excise_1
C: a+b
D: 1test
答案: 【 excise_1

8、单选题:
‏下列选项中,正确的整型常量是________.‌
选项:
A: 018
B: 0xff
C: 12,345
D: 01a
答案: 【 0xff

9、单选题:
‎下列选择中为C语言中非法常量的是_______.‏
选项:
A: 'as'
B: '\'
C: 01177
D: .2e5
答案: 【 'as'

10、单选题:
‏下列哪个选项属于C语言中的合法字符串常量           。‎
选项:
A: $abc$
B: how are you
C: "china"
D: 'hello'
答案: 【 "china"

11、填空题:
​语句printf(“You are rAx20niceEbboy!n”); 的输出结果是______。‌
答案: 【 A niceboy!

12、填空题:
写出下面程序的运行结果。‏#include <stdio.h>‏int main( )‏{ ‏char a,b,c,d;‏a=getchar();‏b=getchar();‏   scanf("%c%c",&c,&d);‏putchar(c);‏return 0;‏}‏如果从键盘输入(从下面一行的第一列开始)‏1<回车>‏234<回车>‏‍则程序的输出结果_________?‏‍‏
答案: 【 2

13、填空题:
​有scanf输入一个double型变量时,需要使用格式转换说明符              。‍
答案: 【 lf

14、填空题:
‍程序中定义的一个字符型变量在内存中占用___     个字节。‌
答案: 【 1

15、填空题:
‎C语言程序中需要进行输入/输出处理时,必须包含的头文件是           。‍
答案: 【 stdio.h

输入与输出

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

2、单选题:
有如下程序段: ‏ int a1,a2; ‏ char c1,c2; ‏ scanf("%d%c%d%c",&a1,&c1,&a2,&c2); ‏‏若要求 a1,a2,c1,c2 的值分别为 10 , 20 , A , B 正确的数据输入是_______。‏‏‏
选项:
A: 10A  20B<CR>
B: 10  A 20  B<CR>
C: 10  A20B<CR>
D: 10A20  B<CR>
答案: 【 10A  20B<CR>

3、单选题:
有变量定义如下:double num; 要使得num的值为3.14159,则正确的输入语句为:________。‎​‎
选项:
A: scanf("%lf",num);
B: scanf("%lf",&num);
C: scanf("%d",&num);
D: scanf("%f",&num);
答案: 【 scanf("%lf",&num);

4、填空题:
以下程序的输出结果是________:‍#include<stdio.h> ‍int main( ) ‍{  ‍ int i=020,j=20,k=0x20;‍printf(“%d,%d,%dn”,i,j,k);‍return 0;‍}‍‌‍
答案: 【 16,20,32

5、填空题:
有以下程序段‌ char ch; int k;‌ ch='a'; k=12;‌ printf("%c,%d,",ch, ch); printf("k=%dn",k);‌ 已知字符a的ASCll十进制代码为97,则执行上述程序段后输出结果是________。‌‏‌
答案: 【 a,97,k=12

第三章 表达式与运算符

常用运算符随堂测

1、单选题:
‏关系运算符对两侧的运算对象的要求是          。‏
选项:
A: 只能是0或1
B: 两个运算对象必须属于同一种数据类型
C: 只能是0或非0值
D: 可以是任意合法的表达式,两者类型不一定相同
答案: 【 可以是任意合法的表达式,两者类型不一定相同

2、单选题:
‎设a,b,c,d均为0,执行(m=a==b)&&(n=c!=d)后,m,n的值为          。‌
选项:
A: 0,0
B: 0,1
C: 1,0
D: 1,1
答案: 【 1,0

3、单选题:
‎设a,b,c都是int型变量,且a=3,b=4,c=5,则下列表达式中值为0的是          。‌
选项:
A: !(a<b && !c || 1)
B: ’a’&&’b’ 
C: a<=b
D: a||b+c&&b-c
答案: 【 !(a<b && !c || 1)

4、单选题:
​若d是double型变量,表达式“d=1, d=5, d++”的值是          。‍
选项:
A: 1.0
B: 2.0
C: 5.0
D: 6.0
答案: 【 5.0

5、填空题:
能表述“10£x<20或x<0”的C语言表达式是       。(请按题目顺序作答)‌‎‌
答案: 【 x>=10&&x<20 || x<0##%_YZPRLFH_%##x=10&&x<20)

第三章表达式与运算符测验

1、单选题:
​sizeof 是一个_____。‌
选项:
A: 运算符
B: 常量
C: 变量
D: 函数
答案: 【 运算符

2、单选题:
有以下变量定义:int k=9,x=14;,则执行语句k=(x%=k)-(k%=4)后,k的值为_____。‏​‏
选项:
A: 3
B: 5
C: 1
D: 4
答案: 【 4

3、单选题:
​判断char型变量c1是否为大写字母的正确表达式是_____。‍
选项:
A: 'A'<=c1<='Z'
B: (c1>='A')&(c1<='Z')
C: (c1>='A')&&(c1<='Z')
D: ('A'<=c1) AND ('Z'>=c1)
答案: 【 (c1>='A')&&(c1<='Z')

4、单选题:
‏设double m=4.0,n=4.0;使m为10.0的表达式是____。‍
选项:
A: m-=n*2.5
B: m/=n+9  
C: m*=n-6
D: m+=n+2
答案: 【 m+=n+2

5、单选题:
设变量均已正确定义并且赋值,以下与其他三组输出结构不同的一组语句是_______。​‎​
选项:
A: x++; printf(“%dn”,x); 
B: n=++x; printf(“%dn”,n);
C: ++x; printf(“%dn”,x); 
D: n=x++; printf(“%dn”,n);
答案: 【 n=x++; printf(“%dn”,n);

6、单选题:
‍若有变量定义:double x=4.5,y=2.5;则表达式(x+y)/2+(int)x%(int)y结果为__      ___。‎
选项:
A: 3.5
B: 5.5
C: 3.0
D: 5.0
答案: 【 3.5

7、单选题:
‍定义 int x,y; 执行 y=(x=1,++x, x+2); 语句后,x=___  __,y =_  ____。​
选项:
A: 2   4
B: 1   3
C: 2   3
D: 4   4
答案: 【 2   4

8、单选题:
‏表达式13/4*sqrt(6.25)/8 值的数据类型为__________。‍
选项:
A: int
B: double
C: float
D: 不确定
答案: 【 double

9、单选题:
‍ x=y=7, x++,y=x+1‍
选项:
A: x=y=7,x++,y+=x+1
B: x=y=7, x++,y=x+1
C: x=y=7, ++y, x+2
D: x=6, x++,y=x+2
答案: 【 x=y=7,x++,y+=x+1

10、单选题:
‍若有代数式(yx+5)/(4a),则正确的C语言表达式是_________。‎
选项:
A: (pow(x,y)+5)/(4*a ) 
B: (pow(y,x)+5)/4/a
C: (pow(y,x)+5)/4*a 
D: (pow(y,x)+5)/4a
答案: 【 (pow(y,x)+5)/4/a

11、填空题:
​设有语句:int a=7; float x=2.5, y=4.7;,则表达式x+a%3*(int) (x+y)%2/4的值是      。‌
答案: 【 2.5##%_YZPRLFH_%##2.500000

12、填空题:
‏在C语言的赋值表达式中,赋值符号左边必须是_________。‌
答案: 【 变量

13、填空题:
‌若有int x=1,y=1,表达式(!x || y--)的值等于              。​
答案: 【 1

14、填空题:
​若有int n = 2;执行语句:n += n-= n*n后, n=            。‍
答案: 【 -4

15、填空题:
设已定义字符型变量ch,执行语句:ch=’D’+32-3; 后ch的值为__________。‏​‏
答案: 【 a

表达式与运算符随堂测

1、单选题:
‍在以下的运算符中,运算对象必须是整型数的是          。‍
选项:
A: +
B: %
C: ++
D: ()
答案: 【 %

2、单选题:
‌设x,y均为整型变量,且x=1,y=2,则表达式1.0+x/y的值为           。‍
选项:
A: 0
B: 1.5
C: 1.0
D: 1
答案: 【 1.0

3、单选题:
‎在以下的运算符中,优先级最高的运算符是          。​
选项:
A: >=
B: +=
C: %    
D: &&
答案: 【 %    

4、单选题:
‎设x是double型变量,则能将x的值四舍五入保留到小数点后两位的表达式是      。  ‍
选项:
A: int(x*100+0.5)/100.0
B: (x*100.0+0.5)/100.0
C: x*100+0.5/100.0 
D: (x/100+0.5)*100.0
答案: 【 int(x*100+0.5)/100.0

5、填空题:
‌表达式(int)((double)7/2)-7%2的值是          。​
答案: 【 2

第四章 程序的流程控制

循环结构随堂测验

1、单选题:
‎C 语言中 while 和 do-while 循环的主要区别是   __。 ‏
选项:
A: do-while 的循环体至少无条件执行一次而while的循环体可能一次也不执行
B: while 的循环控制条件比 do-while 的循环控制条件严格
C:  do-while 允许从外部转到循环体内
D:  do-while 的循环体不能是复合语句
答案: 【 do-while 的循环体至少无条件执行一次而while的循环体可能一次也不执行

2、单选题:
 以下程序段   __。 ‌x=-1; ‌do {   x=x*x;   } while(!x); ‌‏‌
选项:
A: 是死循环
B: 循环执行二次
C: 循环执行一次
D: 有语法错
答案: 【 循环执行一次

3、单选题:
若i和k都是int类型变量,有以下for语句‍for(i=0,k=-1;  k=1;  k++)    printf("*****n");‍下面关于语句执行情况的叙述中正确的是________。‍‏‍
选项:
A: 循环体执行两次
B: 循环体执行一次
C: 循环体一次也不执行
D: 死循环
答案: 【 死循环

4、单选题:
‌下列哪一段代码无法正确实现求1到10的和,假设程序中已有定义:‏‌int  s=0, i;‏
选项:
A: for (i=1; i<=10 ;i++)  s+=i; 
B: for (i=1;;i++) {   if (i>10)   break;  s+=i; }
C: i=1; while (i<=10)  s+=i++;
D: i=1; do {  s+=++i; }while (i<=10);
答案: 【 i=1; do {  s+=++i; }while (i<=10);

流程控制单元测验

1、单选题:
下列程序段执行后,m的值为______。‎int a=0, b=20, c=40, m=60;‎if (a) m=a;‎else if(b) m=b;‎else if(c) m=c;‎​‎
选项:
A: 0
B: 20
C: 40
D: 60
答案: 【 20

2、单选题:
已有定义“int x = 0, y = 3;”,对于下面if语句,说法正确的是______。‌   if  (x = y)  printf(“X与Y相等n”);‌‏‌
选项:
A: 输出:X与Y相等,且执行完后x等于y
B: 无输出
C: 输出:X与Y相等,但执行完后x不等于y
D: 编译出错
答案: 【 输出:X与Y相等,且执行完后x等于y

3、单选题:
‍关于switch语句,下列说法中不正确的是______。‏
选项:
A: case语句必须以break结束
B: default分支可以没有
C: switch后面的表达式可以是整型或字符型
D: case后面的常量值必须唯一
答案: 【 case语句必须以break结束

4、单选题:
下面程序段的运行结果是______。‍int a, b=0;‍       for ( a=0 ; a++<=2 ; ) ;‍              b += a;‍       printf("%d, %dn",a,b);‍‌‍‌‍
选项:
A: 3,6
B: 3,3
C: 4,4
D: 语法错误
答案: 【 4,4

5、单选题:
下面程序段中,循环语句的循环次数是______。​int x=0;​while( x<6 )​{​        if ( x%2 ) continue;​       if ( x==4 ) break;​        x++;​}​‏​
选项:
A: 死循环
B: 1
C: 4
D: 6
答案: 【 死循环

6、单选题:
若变量已正确定义,有以下程序段:‏int a=3,b=5,c=7;‏if(a>b) a=b; c=a;‏if(c!=a) c=b;‏printf("%d,%d,%dn",a,b,c);‏其输出结果是________。‏​‏
选项:
A: 程序段有语法错
B: 3,5,3
C: 3,5,5
D: 3,5,7
答案: 【

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

发表评论

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