2024年1月7日发(作者:)

江西省计算机2级(C语言)考试试题及答案

1、 计算机基础部分(30分)

试题一、选择题(每个选项1分,共30分)。考生从提供的答案中选择一个正确的,并把所选答案的字母填入答题卡对应栏内。

1、 在计算机内部,一切信息均表示为 A 。

(1) A、二进制数 B、十进制数 C、BCD码 D、ASCII码

2、通常所说的计算机系统是由 A 组成。

(2) A、硬件系统和软件系统 B、软件

C、硬件和数据库系统 D、硬件系统和语言编译系统

3、二进制数11011101转换为十进制数是 B 。

(3) A、220 B、221 C、251 D、321

4、CPU不能直接访问的存储器是 B 。

(4) A、内存储器 B、外存储器 C、ROM D、RAM

5、具有多媒体功能的微型计算机系统,通常都配有CD—ROM,这是一种 D 。

(5) A、只读存储器 B、只读大容量软盘

C、只读硬盘存储器 D、只读光盘存储器

6、CAI是计算机的应用领域之一,其含义是 A 。

(6) A、计算机辅助教学 B、计算机辅助制造

C、计算机辅助测试 D、计算机辅助设计

7、简单地说文件名是由 B 两部分组成的。

(7) A、文件名和基本名 B、主文件名和扩展名

C、扩展名和后缀 D、后缀和名称

8、在微型计算机中,唯一能够直接识别和执行的语言是 A 。

(8) A、机器语言 B、汇编语言 C、高级语言 D、数据库语言

9、操作系统是一种 C 。

(9) A、便于计算机操作的硬件 B、便于计算机操作的规范

C、管理计算机系统资源的软件 D、计算机系统

10、多媒体技术是 D 。

(10) A、超文本处理技术 B、文本和图形技术

C、一种图像和图形处理技术

D、计算机技术、电视技术和通信技术相结合的综合技术

11、下列四种软件中属于应用软件的是 A 。

(11) A、财务管理系统 B、Windows C、DOS D、UNIX

12、菜单是Windows98下的一种重要操作手段,要想执行下拉菜单中的某个操作,应 B

(12) A、通过键盘输入菜单中的该操作命令项的文字(如:“打开”、“复制”)

B、用鼠标单击下拉菜单中的该操作令项

C、选择菜单中的该操作命令项,然后按键盘上空格键

D、在窗口内任意一个空白位置单击鼠标键

13、http是一种 C 。

(13)A、高级程序设计语言 B、域名 C、超文本传输协议 D、网址

14、Windows98为用户提供的环境是 D 。

(14)A、单用户单任务 B、单用户多任务

C、多用户单任务 D、多用户多任务

15、在Windows98中,安装一个应用程序的方法是 C 。

(15)A、用鼠标单击“系统菜单”中的“文档”项

B、把应用程序多软盘或CD—ROM光盘上直接复制到硬盘上

C、在“控制面板”窗口内用鼠标双击“添加/删除程序”图标

D、在“控制面板”窗口内用鼠标单击“添加/删除程序”图标

16、关于回收站的以下说法中,正确的是 B 。

(16)A、回收站对每个磁盘都有效

B、用户可以自己控制回收站的大小

C、每个磁盘都使用同一个回收站

D、回收站没有属性可以设置

17、下列有关启动Word 2000的错误方法是 D 。

(17) A、执行“开始”菜单的“程序”中的“Microsoft Word”

B、在桌面中Microsoft Word的快捷方式图标上双击鼠标左键

C、执行“开始”菜单中的“运行”命令,然后在对话中输入Word的路径及文件名

D、在任意一个Word文件的图标上双击鼠标右键

18、有关Word 2000 “打印预览”窗口,说法错误的是 D 。

(18) A、此时不可插入表格 B、此时可全屏显示

C、此时可调整页边距 D、中文Windows

19、PowerPoint 2000中文版是运行在 A上的演示文稿制作软件。

(19) A、MS—DOS 6.0 B、中文DOS 6.0

C、西文Windows D、中文Windows

20、在使用Word文件编辑软件时,要将光标直接定位到文件末尾,可用 D 键。

(20) A、Ctrl+PageUP B、Ctrl+PageDown

C、Ctrl+Home D、Ctrl+End

21、选择纸张大小,可以在“文件”菜单中选择 B 。

(21) A、打印 B、页面设置 C、版面设置 D、打印预览

22、在默认方式下,Excel 2000工作表的行以 B 标记。

(22) A、数字+字母 B、字母+数字 C、数字 D、字母

23、万维网使用 A 协议。

(23) A、HTTP B、HTML C、WWW D、MIME

24、硬盘的容量越来越大,常以GB为单位,已知1GB=1024MB,则1GB等于 B 。

(24) A、1024*1024*8 B、1024*1024

C、1024*1024*1024*8 D、1024*1024*1024

25、以下说法正确的是 C 。

(25) A、计算机网络是一个信息管理系统

B、计算机网络是一个数据库管理系统

C、计算机网络是一个在协议控制下的多机互连的系统

D、计算机网络是一个编译系统

26、在Internet提供的“电子邮件”服务中,可以包含的信息是 A 。

(26) A、数字、文字 B、文字、数字、图像

C、中文字、声音信息 D、文字、数字、声音与图像

27、关于文件属性的以下说法中,正确的是 D 。

(27) A、只读文件一定不能删除送到回收站

B、任何文件都一定有归档属性

C、一个文件可以没有任何属性(A、HR、S)

D、具有隐藏属性的文件在资源管理器中一定不能显示

28、目前在Internet网上提供的主要服务有电子信函(电子邮件)、WWW浏览、远程登录和 A 。

(28)A、文件传输 B、协议转换 C、光盘检索 D、电子图书馆

29、用“文件”菜单中的“另存为”命令保存文件时,不可 D 。

A、将新保存的文件覆盖原有文件

B、修改文件的扩展名“doc”

C、将文件保存无格式的纯文本文件

D、不指定目标文件名

30、计算机通过专线联网,需要有 D 设置。

(30) A、拨号网络 B、网卡 C、电话 D、调制解调器

II、程序设计语言部分(70分)

试题二、语言基础选择题(每个选项1分,共25分)。考生从提供的答案中选择一个正确的, 并把所选答案的字母填入答题卡对应栏内。

1、以下叙述中正确的是 A 。

(31) A、C程序是由主函数组成的

B、C程序是由函数组成的

C、C程序是由函数和过程组成的

D、C程序中注释行是由/*开头,由*/结束

2、在Turbo C中,short int 类型的数据所占的字节数是 B 。

(32) A、1 B、2 C、4 D、8

3、下面不是C语言基本数据类型的是 A 。

(33) A、指针类型 B、无符号长整型 C、单精度型 D、整型

4、下面不是C语言整型常量的是 C 。

(34) A、-32768 B、0x11 C、081 D、01

5、下列运算符中优先级最高的是 A 。

(35) A、>= B、!= C、-= D、| |

6、设int a=3,b=4,c=5;,以下表达式中值为0的是 D 。

(36) A、c && a B、c >= b

C、a | | b+c && b-c D、!((a

7、设a和b都是int类型的变量,下面不正确的赋值操作是 C 。

(37) A、a++; B、a+=b C、a=b; D、a=b=1;

8、以下程序段的输出结果是 D 。

Int a=-2; printf (“%d,%un”,a,a)

(38) A、-2,-2 B、-2,32767 C、-2,32768 D、-2,65534

9、能正确判断char型变量a是否为大写字母的表达式是 C 。

(39) A、(a>=’A’)&(a<=’Z’) B、’A’<=a<=’Z’

C、(‘A’<=a)&&(‘Z’>=a) D、(a<=’Z’) | | (a>=’A’)

10、以下函数的类型是 D

add(double a, double b )

{double s;

s=a+b;

retutn s;

}

(40) A、char B、int C、void D、double

11、为了避免嵌套的条件分支语句if—else的二义性,C语言规定程序中的else总是与 C 组成配对的关系。

(41) A、编排位置相同的else B、在其之前末配对的if

C、在其之前末配对的最近的if D、同一行上的if

12、设有语句int b=’123’; ,则变量b包含了 A 个字符。

(42) A、4 B、3 C、2 D、1

13、以下对共用体类型叙述正确的是 C 。

(43) A、可以对共用体类型变量直接值赋值

B、一个共用体类型变量中可以同时存入其所有成员

C、一个共用体类型变量中不能同时存入其所有成员

D、共用体类型定义中不能同时出现结构类型的成员

14、以下叙述正确的是 D 。

(44) A、C语言比其他语言高级

B、C语言可以不用编译就能被计算机识别执行

C、C语言以接近英语国家的自然语言和数学语言作为语言的表达形

D、C语言出现得最晚、具有其他语言的一切优点

15、以下函数调用语句中实参的个数是 B 。

int try ( (a,b,c), (d,e) );

(45) A、1 B、2 C、3 D、5

16、若有以下说明,则值为6的表达式是 B 。

int a[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, *p=a;

(46) A、*p+6 B、*(p+5) C、*p+=6 D、p+5

17、若有以下程序段(n所赋的是八进制数)

int m = 32767, n = 032767;

printf (“%d,%on”,m,n);

执行后输出结果是 A 。

(47) A、32767,32767 B、32767,032767

C、32767,77777 D、32767,077777

18、设有如下程序:

#include

main()

{ int **k,*j,i=100;

j=&i;k=&j;

printf(“%dn”,**k);

}

上面程序的输出结果是 B 。

(48) A、运行错误 B、100 C、i的地址 D、j的地址

19、有以下程序段

int m=0,n=0; char c=’a’;

scanf(“%d%c%d”,&m,&c,&n);

printf(“%d,%c,%dn”,m,c,n);

若从键盘上输入:10A10<回车>,则输出结果是 A 。

(49)A、10,a,10 B、10,A,10 C、0,a, 0 D、0,A,0

20、标准函数fgets(s,n,f)的功能是 D 。

(50)A、从文件f中读取长度为n的字符串存入s指针所指的内存

B、从文件f中读取长度不超过n-1的字符串存入指针s所指的内存 C、从文件f中读取n个字符串存入指针s所指的内存

D、从文件f中读取长度为n-1的字符串存入指针s所指的内存

21、执行语句for(i=10;i>0;i--);i--;后,变量i的值为 A 。

(51) A、0 B、10 C、-1 D、1

22、若有说明和语句:

int a=5,b;

b=a++;

此处变量b的值是 C 。

(52) A、7 B、6 C、5 D、4

23、宏定义“#define p(x,y,z) x=y*z;”的宏替换“p(a,x+5,y-3.1)”应为

B 。

(53) A、a=x+5*y-3.1; B、a=(x+5)*(y-3.1);

C、a=x+5*y-3.1 D、a=(x+5)*(y-3.1)

24、以下叙述中正确的是 A 。

(54)A、C程序中注释部分可以出现在程序中任意合适的地方

B、花括号”{”和”}”只能作为函数体的定界符

C、构成C程序的基本单位是函数,所有函数名都可以由用户命名

D、分号是C语句之间的分隔符,不是语句的一部分

25、请选出合法的C语言赋值语句 A 。

(55)A、a=b=58 B、i++ C、a=58,b=58 D、k=int(a+b)

试题三、程序阅读选择题(每个选项2分,共30分)。考生从提供的答案中选择一个正确的,并把所选答案的字母填入答题卡对应栏内。

1、下面程序的输出结果是 B 。

main()

{ int y=8;

for(;y>0;y--)

if(y%3==0){printf(“%d”,--y);cintinue;}

}

(56) A、74 B、52 C、963 D、852

2、下面程序的输出结果是 C 。

main()

{ int i,j,m=0;

for(i=2;i<=14;i+=4)

for(j=3;j<=19;j+=4)m++;

printf(“%dn”,m);}

(57) A、8 B、16 C、20 D、25

3、下面程序的输出结果是 A 。

main()

{ int w=4,x=3,y=2,z=1;

printf(“%dn”,(w

}

(58) A、1 B、2 C、3 D、4

4、下面程序的运行结果是 C 。

int a=3,b=5;

max(int a, int b)

{int c;

c=a>b?a:b;

return(c);

}

main()

{int a=16;

printf(“%dn”,max(a,b));

}

(59) A、3 B、5 C、16 D、语法错

5、下面程序执行后输出的结果是 C 。

main()

{char s[]=”n123”;

printf(“%d,%dn”,strlen(s),sizeof(s));

}

(60) A、赋初值的字符串有错 B、6,7 C、5,6 D、6,6

6、下面程序运行时输入5,4则对应的输出结果是 D 。

int sum(int k )

{static int y=0;int i;

for(i=1;i<=k;i++)y+=i;

return y;

}

main()

{ int m,n;

scanf(“%d,%d”,&m,&n);

printf(“%dn”,sum(m)+sum(n));

}

(61) A、54 B、0 C、40 D、50

7、下面程序的功能是将一个整数字符串转换为一个整数,如“-1234”转换为-1234,请在 处选择正确答案。

#include

#include

main()

{char s[6];

int n;

gets(s)

if(*s= =’-’)n=-chnum(s+1);

else n=chnum(s);

printf(“%dn”,n);

}

chnum(char *p)

{int num=0,k,len,j;

len=strlen(p);

for(; B ;p++)

{k= B ;

j=(--len);

while( A ){k=k*10;}

num=num+k;

}

return(num);

}

(62) A、P!=’0’ B、*(++P)!=’0’

C、*(P++)!=’0’ D、len!=0

(63) A、*p B、*p+’0’ C、*p-‘0’ D、*p -32

(64) A、--j>0 B、j-->0 C、--len>0 D、len-->0

8、下面程序的输出结果是 B 。

#define EVEN(a) a%2= =0?1:0

main()

{if (EVEN(9+1))printf(“is evenn”);

else printf(“is oddn”);

}

(65) A、is even B、is odd C、10 is even D、10 is odd

9、下面程序的输出结果是 D 。

main()

{int arr[]={6,7,8,9,10},*ptr=arr;

*(ptr+2)+=2;

printf(“%d,%dn”,*ptr,*(ptr+2));

}

(66) A、3,7 B、4,8 C、5,9 D、6,10

10、下面程序的输出结果是 B 。

mma(int a,int b)

{int c;

a+=a;b+=b;c=mmb(a,b);

return c*c;

}

mmb(itn a,int b)

{int c;

c=a*b%3;

return c;

}

main()

{int x=11,y=19;

printf(“%dn”,mma(x,y));

}

(67) A、1 B、4 C、9 D、16

11、下面程序运行时输入

Windos XP 1.0

则输出的结果是 A 。

main()

{char str[17];

scanf(“%s”,str);

printf(“%sn”,str);

}

(68) A、Windows B、Windows XP 1.0

C、Windows XP D、程序中scanf()格式有错,程序无法运行

12、下面程序的输出结果是 A 。

#include

main()

{char pl[20]=”abc”,*p2=”ABC”,str[50]=”xyz”;

strcpy(str+2,strcat(p1,p2));

printf(“%sn”,str);

}

(69) A、zabcABC B、xyzabcABC C、yzabcABC D、xyabcABC

13、有如下的定义:

struct person

{char name[9];int age;};

struct person class[10]={“John”,17,”Paul”,19,”Mary”,18,”Adam”,16};

以下选项中能打印出字母” M”的语句是 D 。

(70) A、printf(“%cn”,class[3].name);

B、printf(“%cn”,class[3].name[1]);

C、printf(“%cn”,class[2].name[1]);

D、printf(“%cn”,class[2].name[0]);

试题四、综合应用题(共15分)。考生把答案写在答卷纸对应栏内。

编程实现,当输入a1、a2、…、a15后,计算下列表达式的值并输出。

1+a11+ a21+a31+…

1+(a1)/1+(a2)/1+(a3)/1+......(a13)/1+(a14)/1+a15