安徽省计算机等级二级考试真题C语言

更新时间:2023-11-02 13:53:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

机密☆启用前

二〇一三年下半年全国高等学校(安徽考区)

计算机水平考试试卷

(二级 C语言程序设计)

考生须知:

1.请将准考证号末两位填在试卷第2页右上方的方框内。

2.单项选择题请在答题卡上填涂;其他内容请在答题卡上作答,试卷上作答无效。 3.不得将试卷、答题卡、答题卷及稿纸带离考场。 4.考试试卷为120分钟。

一、单项选择题(每题1分,共40分) 1.一个完整的计算机系统应该包括__1__。

A)主机与外部设备

B)主机与操作系统 D)CPU、存储器与外部设备

C)硬件系统与软件系统

2.在计算机内,数据或指令是以__2__形式传送。储存及加工处理的。

A)十进制

B)二进制

C)八进制

D)十六进制

3.将计算机用于车票预售,属于计算机在__3__方面的应用。 A)人工智能

B)科学计算

C)自动控制

D)信息管理

4.收发电子邮件的必备条件之一是__4__。

A)通信双方都要申请一个付费的电子信箱 B)通信双方电子信箱必须在同一服务器上 C)通信双方都有电子信箱 D)电子邮件必须带有附件

5.通常U盘通过__5__借口与计算机相连。

A)USB

B)SCSI

C)IDE

D)UBS

6.Windows的文件夹组织结构式一种__6__。

A)表格结构

B)树形结构

C)网状结构

D)线性结构

7.下列不属于多媒体播放工具的是__7__。

A)windows Media Player

B)暴风影音

安徽省二级C笔试13年12月 第 1 页 (共 17 页 )

C)RealPlayer实时播放器 D)迅雷

8.计算机病毒是一种__8__。

A)含有错误的程序 C)计算机硬件故障

B)对计算机器起破坏作用的器件 D)人为设计的程序

9.电子商务师指__9__。

A)借助于计算机网络进行商务活动 C)使用电子货币进行商品交易

B)通过电子邮件进行商务谈判 D)使用信用卡购买商品

10.安装防火墙的主要目的是__10__

A)提高网络的运行效率

B)对网络信息进行加密 D)防止计算机数据丢失

C)保护内网不被非法入侵

11.C语言程序中main( )函数可以写在___11__

A)程序文件的开始

B)程序文件的最后 D)以上选项均正确

C)它所调用的函数的前面

(2013-3)同类题目.下列对c语言程序的描述中,正确的是_____

A)c语言程序是从第一个定义的函数开始执行 B)c语言程序总是从最后一个定义的函数执行 C)c语言程序总是从main函数开始执行

D)c语言函数中main函数必须放在程序的开始部分)

12.下列关于C语言的叙述错误的是__12___

A)大写字母和小写字母的意义相同

B)不同类型的变量可以乐意出现在同一个表达式中

C)在赋值表达式中,等号(=)左边的变量和右边表达式中的值可以是不同类型 D)同一个运算符在不同的场合可以有不同的功能

13.在C语言中,错误的int类型常量是__13__

A)1234

B)0

C)039

D)0xAF

(2013-3)_____是不合法的常量。 A)’xabcde’ B)”xlf” C)0x12

D)2.1e3

安徽省二级C笔试13年12月 第 2 页 (共 17 页 )

14.以下选项中正确的C语言标识符是___14___

A)2b

B)x_1

C)a@b

D)3#h

(2013-6)____不是c语言的合法关键字。

A)switch

B)default

C)case

D)printf

(2012-12)下列不能作为变量名的是_____。 A)_math

B)vc39

C)STUD

D)continue)

15.已知char a=’\\70’;,则变量a中___15___ (格式?\\ddd?,?\\xhhh?)

A)包含1个字符 C)包含3个字符

B)包含2个字符 D)包含4个字符

16.以下选项中,和语句k=++n;等价的是__16___

A)k=n,n=n+1; C)k=n++;

B)n=n+1,k=n; D)k=n+1

17.已知int x=5,y-5,z=5;则执行语句x%=y+z;后,X的值__17_

A)0

B)1

C)5

D)6

(2012-12)设有int a=8,b=2;,则表达式a/5*b的值是_____。 A)0 B)2 C)0.8 D)3.2 (2013-6)z执行语句int a=3;a+=a-=a*a;后a的值_____ A)-12 B)0 C)3 D)9) 18.已知int x=(1,2,3,4);,则变量X的值是___18___

A)1

B)2

C)3

D)4

(2012-12)设有int y=0;,执行语句y=5,y*4,y*2;后变量y的值是_____。 A)0 B)5 C)10 D)20

(2013-6)若a、i和j都是int型变量,则执行语句a=(i=4,j=16);后a的值为____

A)4 B)16 C)20 D)12 19.已知char a=’A’;int b=20;float c=32.6;,则执行语句c=a+b+c;后,变量c的数据类型是___19____

A)int

B)char

C)float

D)double

(2012-12)设有定义char w ;int x;float y;;double z;则表达式w*x+z-y值的数据类型为_

A)float B)char C)int D)double) 20.已知int a=23;,则表达式a*10+a/10的值是___20__

A)32

B)23

C)20

D)32.3

21.使用语句scanf(?x=%f,y=%f?,&x,&y);,输入变量x,y的值,正确的输入是___21__(□

安徽省二级C笔试13年12月 第 3 页 (共 17 页 )

代表空格)

A)1.25,2.4

B)1.25□2.4 D)x=1.25□y=2.4

C)x=1.25,y=2.4

(2013-6)设有定义int a; char c;,执行输入语句scanf(?%d%c?,&a,&c);时,若要求a和c得到的值为10和‘Y’,正确的输入方式是______.

A)10,Y

B)10.Y

C)10Y

D)10 Y)

(2012-12)设有float a;char ch[80];,则下列选项中正确的输入语句是_____。

A)scanf(?%f%s?,&a,ch[0]); C)scanf(?%f%s?,a,ch);

22.已知char c=’A’;,则执行语句printf(?%c?,c+32);后,输出结果是____22__

A) a

B)65

C)97

D)A

B)scanf(?%f%s?,&a,ch); D)scanf(?%f%s?,a,&ch);

23.以下能正确表示逻辑关系?a≥5或a≤-1?的C语言表达式是___23__

A)a> =5.or.a<=-1 C)a> =5&&a<=-1

B)a> =5.and.a<=-1 D)a> =5||a<=-1

(2012-12) 若变量c为char类型,下列选项中能正确判断出c为大写字母的表达式是_____。 A)’A’<=c<=’Z’

B)c>=’A’||c<=’Z’ D)c>=’A’&&c<=’Z’

C)’A’<=c and‘Z’>=c

24.已知int i=10;,则表达式20<=i<=9的值是___24__

A)0

B)1

C)19

D)20

25.已知int x=1;,则执行语句x>5&&++x;后,变量x的值是__25__

A)4

B) 3

C)2

D) 1

(2012-12)设x,y,t均为int型变量,则执行语句:x=y=0;t=++x||++y;后,x和y的值分别为_____。

A)0,0 B)0,1 C)1,0 D)1,1

26.与条件表达式?(n)?(++c):(--c)?中的表达式(n)等价的表达式是__26__

A)(n==0)

B)(n==1)

C)(n!=0)

D)(n!=1)

(2012-12)设有int a=2,b=1,c=3,d=4;,则表达式a

A)7 B)3 C)2 D)1

安徽省二级C笔试13年12月 第 4 页 (共 17 页 )

27.已知int i=1;,则执行语句while(i++<4);后,变量i的值是__27__

A) 3

B) 4

C) 5

D)6

(2013-6)设n为整形变量,执行语句for(n=1;n++<4;);后,变量n的值是_

A)3 B)4 C)5 D)6) (2012-12) 执行语句for(i=1;i<9;i+=2);后变量i的值是_____。 A)8 B)9 C)10 D)11

28.执行下面程序段后,输出结果是___28___ int x,y;

for(x=1;y=10;x

printf(“%d\\n”,x);

A) 5

B)6

C) 4

D)10

(2013-6)若i为整形变量,则下列循环执行的次数是____

for(i=2;i==0;)printf(?%d\\n?,i--);

A)2次 B1次 C)0次 D)无限次 29.以下运算符优先顺序从底到高的是_29_。

A)>、/、=、&& C)/、>、=、&&

B)&&、>、/、=

D)=、&&、>、/

D)||

(2013-6)下列运算符优先级最高的是_____

A)< B)+ C)&& 30.执行下面程序段后,输出的结果是_30_.

char s1[50] = {\printf(\A)some string * C)some strites

B) test

D) some string * test

(2013-6.下列程序段的运行结果是____

char c[5]={‘a’,’b’,’\\0’,’c’,’\\0’};printf(?%s?,c); A)’a’’b’ B)ab

C)ab c

D)ab\\0c\\0)

31.一直int a[] = {1,2,3,4,5,6,7,8,9,10,11,12}, * p = a+2;,则值为3的表达式是_31_。

A) * P B) * + + p C) * (p - 1) D) + + * p

(2012-12).设有int s[]={2,4,6,8,10},*p=s;,则下列选项中值为8的表达式是_____。 A)*p+2

B)*p+3

C)*(p+3)

D)*(p+2)

安徽省二级C笔试13年12月 第 5 页 (共 17 页 )

(2012-12) 设有int m[ ]={5,4,3,2,1},i=4;,则下列对数组m的元素引用中错误的是_____。

A)m[i-1]

B)m[4]

C)m[m[0]]

D)m[m[i]]

32.以下能对一维数组b进行正确初始化的语句是_32_。

A)int b[5] = (10,20,30,40,50);

B)int b[5] = { };

D)int b[5] = {0,1,2,3,4,5};

C)int b[5] = {1,2,6};

(2012-12)下列数组定义语句中,正确的是____

A)int a[ ]=?string?; B)int a[5]={0,1,2,3,4,5}; C)char a =?string?; D) int a[]={0,1,2,3,4,5};

33.已知char s[10] = \,* p = s;则在下列语句中,错误的语句是_33_。

A)p = s + 5 B)s = p + s

C)s[2] = p[4]; D) * p = s[0]

(2012-12)对于类型相同的两个指针变量之间,能进行的运算是_____。

A)% B)= C)+ D)/ 34.在C语言中,函数的数据类型是指 。 A)定义函数时所指定的函数类型 C)调用函数时的实参的数据类型

B)函数形参的数据类型 D)任意指定的数据类型

35. 若调用函数时用数组名作为实参,则传递给对应形参时的是_34_。

A)数组首地址

B)数组的第一个元素值 D)数组元素的个数

C)数组中全部元素的值

36.下面函数的功能是_36_。

void a(char s1[],char s2[]) { while( * s2 + + = * s1 + +);} A)字符串比较 C)字符串连接

B)字符串复制 D)字符串反向

(2012-12)28.若下列表达式_____为真时,说明字符串s1小于字符串s2。 A)strcmp(s1,s2)>0 B)strcat(s1,s2)

C)strcpy(s1,s2)

D)strcmp(s1,s2)<0

37.已知宏定义 #define SQ(x) x * x,则执行语句printf(\);后的输出结果是_37_。

A)1

B)3

C)9

D)10

安徽省二级C笔试13年12月 第 6 页 (共 17 页 )

(2013-3)若有#define ADD(x,y)x*y,则语句printf(?s=%d?,ADD(2,2+3))的输出结果是

A)s=8

B)s=7

C)s=10

D)s=11)

(2012-12) 设有#define M(x) x*x,则M(2+5)的值是___17__。 38.已知 struct sk {int a;

float b; }data, *p;

p=&data;则对于结构变量data的成员a的正确引用是___38___。

A)(*p).data..a B)(*p).a C)p->data.a D)p.data.a

(2012-12)设有:

struct student { char name[21]; char sex;

int score;}std={?Li Ming?,’M’,90},*p;p=&std; 则下列输出语句中错误的是_____。

A)printf(?%d?,(*p).score); B)printf(?%d?,p->score); C)printf(?%d?,std.score); D)printf(?%d?,p.score);

(2012-12)38 设有定义语句: struct stu

{ int x;

float y;}stutype; 则下列的说法不正确的是-----

A)struct是定义结构体类型的关键字 B)struct stu 是用户定义的结构体类型 C)x和y都是结构体成员

D) stutype 是用户定义的结构体类型名)

39.已知int a=15;,执行语句a=a<<2;后,变量a的值是___39____。

A)3 B)15

C)30

C)40

D)60

(2013-6)设有定义 int a=80;执行语句a=a>>2后变量a的值是

A)80

B)60

D)20

40.要打开一个已存在的非空文件?file?用于修改,选择正确的语句___40____。

A)fp=fopen(“file”,”r”); B)fp=fopen(“file”,”b+”);

安徽省二级C笔试13年12月 第 7 页 (共 17 页 )

C) fp=fopen(“file”,”w”); D) fp=fopen(”file”,”r+”);

二、填空题(共10空,每空2分,共20分)

1,、结构化程序设计的三种基本结构分别是:顺序结构、__选择结构__1____、和循环结构。 2、已知double f=7.86;int i=3;则表达式(int)f%i的值为___1__。//选择题或填空题

(2013-6)若有定义float a=3.1,b=2.8;,则表达式(int)a+b的值是5.80) (2012-12)设有float a=100.25,b=2.5;,则表达式(int)a/b的值是_40.0_。

3、已知double f=56.789;,则执行语句printf(“%.2f”,f);后的输出结果为___56.79___。 4、已知int max,a=3,b=4;,则执行语句max=(a>b? a:b);后max的值为__4_。 5、已知int a[3][4]={1,2},{0,1},{4,6,8,10}};,则a[1][1]+a[2][2]的值是___9__。 (2013-6)若定义int a[6]={1,2,3,4,5,6},*p=&a[2];,则p[3]的值是(6)) 6、C标准库函数中,常用的字符串比较函数是___strcmp()____。

7、已知char str[ ]=”ab\\070\\\\14\\n”;,则执行语句printf(“%d”,strlen(str));后输出结果是____7___。//选择题或填空题

(2013-6)已知char s[ ]=?\\\\\\102abc?;printf(?%d\\n?,strlen(s));结果是( 5 ))

8、设有函数调用语句fun(a,b+c,(d,e));,则该函数调用语句中含有的实参的个数是____3____。 //选择题和填空题

(设有函数调用语句func(a1,(a2,a3),(a4,a5,a6));,则该调用语句中实参的个数是__3__。)

9、已知

enum color {red,yellow=2,blue,white,black}pen;,则执行语句

printf(“%d”,pen=white);后的输出结果为___4___。 10、判断文件指针是否指向文件尾的函数为___feof()__。

安徽省二级C笔试13年12月 第 8 页 (共 17 页 )

三 阅读理解题(共5题,每题4分,共20分)

基本题型:选择结果、循环结构、函数、递归、指针、动态与静态变量等常用算法 1.以下程序的运行结果是__B_____。

#include void main( ) { int score=85;

switch ((score-50)/10) {case 5:

case 4:printf(“A”);break; case 3:printf(“B”);break; case 2:printf(“C”);break; case 1:printf(“D”);break;

default:printf(“E”);

} }

(2013-6) #include void main() { int x=2, y=-1,z=2; if(x void main() { int grade=95; switch(grade/10) { default: printf(\ case 6:printf(\ case 7: case 8:printf(\ case 9: case 10:printf(\ } } 结果:A 安徽省二级C笔试13年12月 第 9 页 (共 17 页 )

2.以下程序的运行结果是___2766___。

#include void main() {

int sum=0; int i,j=0;

for(i=1;i<=4;i++) {

j=j*9+3;

sum=sum+j; }

printf(“sum=%d\\n”,sum);

}

2012-6 #include void main() { int i,j; for(i=2;i<10;i++) { for(j=2;j=i) printf(\ } printf(\} 结果:2 3 5 7 安徽省二级C笔试13年12月 第 10 页 (共 17 页 )

[2013-6]

编程将输入的字符串中的数字字符与非数字字符分离开来,分别组成俩个字符串,并输出。例如,输入字符串?A123B56C78D0X?,分离得到字符串?12356780?与?ABCDX?。

#include #include void main()

{ int i=0;char s[]=\char szc[15], zfc[15],*s1=szc,*s2=zfc; while(s[i]!='\\0')

{if (s[i]>='0'&&s[i]<='9') *s1++=s[i]; else *s2++=s[i]; i++;}

*s1='\\0',*s2='\\0';

printf(\数字串=%s,字符串=%s\\n\

[2011-12]

设有未完成的函数: Char getchar(char c)

{ chars[ ]=”9038571426” …… }

字符串s中无序的存储了10个数字字符,没有重复。函数的功能是: 如果字符c不是数字字符,函数原样返回该字符;

在s中查找字符c并返回其在s中的前一个字符。如果该字符位于s的最前面(字符‘9’),则返回最后一个字符‘6’。 例如; getchar(‘4’)得到字符‘1’,getchar(‘T’)得到字符‘T’ 请设计并完成改函数。

#include char Getchar(char c)

{char s[]=\if(c>='0' && c<='9')

安徽省二级C笔试13年12月 第 16 页 (共 17 页 )

{for(i=0;i

if(i==0) return s[strlen(s)-1]; else

return s[i-1];} else

return c;}

main()

{ char c;c=Getchar('4'); printf(\ getch();}

安徽省二级C笔试13年12月第 17 页 (共 17 页 )

本文来源:https://www.bwwdw.com/article/j7t2.html

Top