荟萃馆

位置:首页 > 计算机 > 计算机二级

2016年计算机二级C语言笔试试卷大纲

2016年计算机等级上半年考试时间是3月26日-29日,下面小编为大家整理的是关于二级c语言设计的考试试题,希望对同学们的复习有帮助!

2016年计算机二级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

(6) 下列叙述中正确的是

A) 指令由操作数和操作码两部分组成 B) 常用参数xxMB表示计算机的速度

C) 计算机的一个字长总是等于两个字节 D) 计算机语言是完成某一任务的指令集

(7) 计算机的内存储器比外存储器

A) 价格便宜 B) 存储容量大 C) 读写速度快 D) 读写速度慢

(8) 设当前盘为C盘,执行DOS命令"COPY B: PRN"之后,结果是

A) B盘上的文件被复制到C盘的PRN文件 B) 屏幕上显示B盘上的文件内容

C) B盘上的文件内容在打印机上输出 D) B盘上的文件被复制到B盘上的PRN文件

(9) 要将当前盘当前目录下的两个文件和连接起来之后存入B盘当前目录下并且命名,无论B盘当前目录是什么,完成这件任务可以使用的命令是

A) COPY A:+C: B) COPY +C:WS B:

C) COPY A:+C:WS D) COPY + B:

(10) 下列四组DOS命令中,功能等价的一组是

A) COPY A:*.* B:与DISKCOPY A: B: B) COPY + 与TYPE >>

C) COPY +与COPY + D) TYPE *>CON与COPY * CON

(11) 设当前目录为D:BB,现要把D:AA目录下首字符是A的文本文件全部删除,

应该使用命令

A) DEL A* B) DEL AA

C) DEL AAA* D) DEL AAA?

(12) 在Windows中,启动应用程序的正确方法是

A) 用鼠标指向该应用程序图标 B) 将该应用程序窗口最小化成图标

C) 将该应用程序窗口还原 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) 下列程序的输出结果是

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; 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 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 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;

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=%dn",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个字节

(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 C) 7 D) 8

struct abc

{ int a, b, c; };

main()

{ struct abc s[2]={{1,2,3},{4,5,6}}; int t;

t=s[0],a+s[1],b;

printf("%d n",t);

}

(34) 设 int b=2;表达式(b>>2)/(b>>1)的值是

A) 0 B) 2 C) 4 D) 8

(35) 在C程序中,可把整型数以二进制形式存放到文件中的函数是

A) fprintf函数 B) fread函数 C) fwrite函数 D) fputc函数

(36) 下列程序执行后的输出结果是

A) -32767 B) FFFE C) -1 D) -32768

main()

{ char x=0xFFFF; printf("%d n",x--); }

(37) 若有定义: float w; int a, b; 则合法的switch语句是

A) switch(w) B) switch(a);

{ case 1.0: printf("*n"); { case 1 printf("*n");

case 2.0: printf("**n"); case 2 printf("**n");

} }

C) switch(b) D) switch(a+b);

{ case 1: printf("*n"); { case 1: printf("*n");

default: printf("n"); case 2: printf("**n");

case 1+2: printf("**n"); default: printf("n");

} }

(38) 以下程序段的执行结果是

A) a=12 y=12 B) a=12 y=12

a=14 y=16 a=16 y=28

a=16 y=20

a=18 y=24

C) a=12 y=12 D) a=12 y=12

a=14 y=26

a=14 y=44

int a, y;

a=10; y=0;

do

{ a+=2; y+=a;

printf("a=%d y=%dn",a,y);

if(y>20) break;

{ while(a=14);

.

.

.

(39) 若有以下调用语句,则不正确的fun函数的首部是

A) void fun(int m, int x[]) B) void fun(int s, int h[41])

C) void fun(int p, int *s) D) void fun(int n, int a)

main()

{ …

int a[50],n;

fun(n, &a[9]);

}

(40) 语句printf("abre'hi'y\boun");的输出结果是

A) abre'hi'y\bou B) abre'hi'ybou

C) re'hi'you D) abre'hi'ybou

(说明:'b'是退格符)

(41) 请选出正确的程序段

A) int *p; B) int *s, k;

scanf("%d",p); *s=100;

… …

C) int *s, k; D) int *s, k;

char *p, c; char *p, e;

s=&k; s=&k;

p=&c; p=&c;

*p='a'; s=p;

… *s=1;

(42) 已知指针p的指向如下图所示,则执行语句 *--p;后*p的值是