2000 年 4 月全国计算机二级 C 语言考试真题及答案
一、选择题((1)--(40)每小题 1 分, (41)--(50)每小题 2 分, 共 60 分)
下列各题 A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项在
答题卡相应位置上涂黑,答在试卷上不得分。
(1)下列述叙中正确的是
A.显示器和打印机都是输出设备
B.显示器只能显示字符
C.通常的彩色显示器都有 7 种颜色
D.打印机只能打印字符和表格
(2)微型计算机中运算器的主要功能是进行
A.算术运算
B.逻辑运算
C.算术和逻辑运算
D.初等函数运算
(3)COMMAND。COM 是 DOS 系统的外层模块,通常称之为
A.引导程序
B.输入输出系统
C.命令处理系统
D.文件管理系统
(4)电子邮件是
A.网络信息检索服务
B.通过 Web 网页发布的公告信息
C.通过网络实时交互的信息传递方式
D.一种利用网络交换信息的非交互式服务
(5)和十进制数 225 相等的二进制数是
A.11101110
B.11111110
C.10000000
D.11111111
1
(6)下列叙述中正确的是
A.指令由操作数和操作码两部分组成
B.常用参数 xxMB 表示计算机的速度
C.计算机的一个字长总是等于两个字节
D.计算机语言是完成某一任务的指令集
(7)计算机的内存储器比外存储器
A.价格便宜
B.存储容量大
C.读写速度快
D.读写速度慢
(8)设当前盘为 C 盘,执行 DOS 命令"COPY B:\A.TXT PRN"之后,结果是
A.B 盘上的 A.TXT 文件被复制到 C 盘的 PRN 文件
B.屏幕上显示 B 盘上的 A.TXT 文件内容
C.B 盘上的 A.TXT 文件内容在打印机上输出
D.B 盘上的 A.TXT 文件被复制到 B 盘上的 PRN 文件
(9)要将当前盘当前目录下的两个文件 X1.TXT 和 B1.TXT 连接起来之后存入 B 盘当 前目录下
并且命名为 Z.TXT,无论 B 盘当前目录是什么,完成这件任务可以使用的命令是
A.COPY A:X1.TXT+C:B1.TXT Z.TXT
B.COPY X1.TXT+C:\WS\B1.TXT B:\Z.TXT
C.COPY A:X1.TXT+C:\WS\B1.TXT
D.COPY X1.TXT+B1.TXT B:Z.TXT
(10)下列四组 DOS 命令中,功能等价的一组是
A.COPY A:*.* B:与 DISKCOPY A: B:
B.COPY ABC.TXT+XYZ.TXT 与 TYPE XYZ.TXT>>ABC.TXT
C.COPY ABC.TXT+XYZ.TXT 与 COPY XYZ.TXT+ABC.TXT
D.TYPE *.FOR>CON 与 COPY *.FOR CON
(11)设当前目录为 D:\BB,现要把 D:\AA 目录下首字符是 A 的文本文件全部删除,应该使用
命令
A.DEL A*.TXT
2
B.DEL \AA\A.TXT
C.DEL \AA\A*.TXT
D.DEL \AA\A?.TXT
(12)在 Windows 中,启动应用程序的正确方法是
A.用鼠标指向该应用程序图标
B.将该应用程序窗口小化成图标
B.将该应用程序窗口还原
D.用鼠标双击该应用程序图标
(13)在 Windows 中,终止应用程序执行的正确方法是
A.将该应用程序窗口小化成图标
B.用鼠标双击应用程序窗口右上角的还原按钮
C.用鼠标双击应用程序窗口中的标题栏
D.用鼠标双击应用程序窗口左上角的控制菜单框
(14)在微机系统中,对输入输出设备进行管理的基本程序模块(BIOS)存放在
A.RAM 中
B.ROM 中
C.硬盘中
D.寄存器中
(15)使计算机病毒传播范围广的媒介是
A.硬磁盘
B.软磁盘
C.内部存储器
D.互联网
(16)设有 int x=11; 则表达式 (x++ * 1/3)的值是
A.3
B.4
C.11
D.12
(17)下列程序的输出结果是
3
A.3
B.3.2
C.0
D.3.07
main()
{ double d=3.2; int x,y;
x=1.2; y=(x+3.8)/5.0;
printf("%d \n", d*y);
}
(18)下列程序执行后的输出结果是(小数点后只写一位)
A.6 6 6.0 6.0
B.6 6 6.7 6.7
C.6 6 6.0 6.7
D.6 6 6.7 6.0
main()
{ double d; float f; ling l; int i;
i=f=1=d=20/3;
printf("%d %ld %f %f \n", i,l,f,
D.;
}
(19)下列变量定义中合法的是
A.short _a=1-.le-1;
B.double b=1+5e2.5;
C.long do=0xfdaL;
D.float 2_and=1-e-3;
(20)设 int x=1, y=1; 表达式(!x||y--)的值是
A.0
B.1
C.2
4
D.-1
(21)与 y=(x>0?1:x<0?-1:0);的功能相同的 if 语句是
A.if (x>0)y=1;
B.if(x)
else if(x<0)y=-1; if(x>0)y=1;
else y=0; else if(x<0)y=-1;
else y=0;
C.y=-1
D.y=0;
if(x)if(x>=0)
if(x>0)y=1; if(x>0)y=1;
else if(x==0)y=0; else y=-1;
else y=-1;
(22)以下循环体的执行次数是
A.3
B.2
C.1
D.0
main()
{ int i,j;
for(i=0,j=1; i<=j+1; i+=2, j--)printf("%d \n",i);
}
(23)以下叙述正确的是
A.do-while 语句构成的循环不能用其它语句构成的循环来代替。
B.do-while 语句构成的循环只能用 break 语句退出。
C.用 do-while 语句构成的循环,在 while 后的表达式为非零时结束循环。
D.用 do-while 语句构成的循环,在 while 后的表达式为零时结束循环。
(24)下列程序执行后的输出结果是
A.G
5
B.H
C.I
D.J
main()
{ int x='f'; printf("%c \n",'A'+(x-'a'+1)); }
(25)执行下面的程序段后,变量 k 中的值为
A.不定值
B.33
C.30
D.10
int k=3, s[2];
s[0]=k; k=s[1]*10;
(26)若已定义:
int a[ ]={0,1,2,3,4,5,6,7,8,9], *p=a,i;
其中 0≤i≤9, 则对 a 数组元素不正确的引用上
A.a[p-a]
B.*(&a[i])
C.p[i]
D.a[10]
(27)下列程序执行后的输出结果是
A.6
B.7
C.8
D.9
void func(int *a,int b[])
{ b[0]=*a+6; }
main()
{ int a,b[5];
a=0; b[0]=3;
6
func(&a,
B.; printf("%d \n,b[0]);
}
(28)下列程序的运行结果是
A.a=%2,b=%5
B.a=2,b=5
C.a=d, b=d
D.a=%d,b=%d
#include
main()
{ int a=2,c=5;
printf("a=%d,b=%d\n",a,
C.; }
(29)下列程序执行后的输出结果是
A.3
B.6
C.9
D.随机数
main()
{ int a[3][3], *p,i;
p=&a[0][0];
for(i=p; i<9; i++)p[i]=i+1;
printf("%d \n",a[1][2]);
}
(30)设有数组定义: char array [ ]="China"; 则数组 array 所占的空间为
A.4 个字节
B.5 个字节
C.6 个字节
D.7 个字节
7
(31)下列程序的输出结果是
A.4
B.6
C.8
D.10
int b=2;
int func(int *a)
{ b += *a; return(
B.;}
main()
{ int a=2, res=2;
res += func(&a);
printf("%d \n",res);
(32)在以下四组中,每组有两个分别运算的函数,运算结果相同的是
}
A.4
B.2
C.2
D.0
main()
{ int i, j, m=0, n=0;
for(i=p; i<2; i++)
for(j=0; j<2; j++)
if(j>=i)m=1; n++;
printf("%d \n",n);
}
(33)下列程序的输出结果是
A.5
B.6
8