c语言考试题.docx

上传人:b****6 文档编号:6507182 上传时间:2023-01-07 格式:DOCX 页数:61 大小:36.85KB
下载 相关 举报
c语言考试题.docx_第1页
第1页 / 共61页
c语言考试题.docx_第2页
第2页 / 共61页
c语言考试题.docx_第3页
第3页 / 共61页
c语言考试题.docx_第4页
第4页 / 共61页
c语言考试题.docx_第5页
第5页 / 共61页
点击查看更多>>
下载资源
资源描述

c语言考试题.docx

《c语言考试题.docx》由会员分享,可在线阅读,更多相关《c语言考试题.docx(61页珍藏版)》请在冰豆网上搜索。

c语言考试题.docx

c语言考试题

一、单项选择共246题(共计246分)

第1题(1.0分)

以下程序的运行结果是()。

main()

{

inti=1,sum=0;

while(i<10)sum=sum+1;i++;

printf("i=%d,sum=%d",i,sum);

}

A:

i=10,sum=9

B:

i=9,sum=9

C:

i=2,sum=1

D:

运行出现错误

第2题(1.0分)

以下数据中,不正确的数值或字符常量是()。

A:

c

B:

66

C:

0xaa

D:

50

第3题(1.0分)

下列语句的输出结果是()。

printf("%d\n",(int)(2.5+3.0)/3);

A:

有语法错误不能通过编译

B:

2

C:

1

D:

0

第4题(1.0分)

以下程序的输出结果是()。

main()

{floatx=3.6;

inti;

i=(int)x;

printf("x=%f,i=%d\n",x,i);

}

A:

x=3.600000,i=4

B:

x=3,i=3

C:

x=3.600000,i=3

D:

x=3i=3.600000

第5题(1.0分)

以下对枚举类型名的定义中正确的是()。

A:

enuma={sum,mon,tue};

B:

enuma{sum=9,mon=-1,tue};

C:

enuma={"sum","mon","tue"};

D:

enuma{"sum","mon","tue"};

第6题(1.0分)

下列运算符中,不属于关系运算符的是()。

A:

<

B:

>

C:

>=

D:

!

第7题(1.0分)

设a=12,且a定义为整型变量。

执行语句a+=a-=a*=a;后a的值为()。

A:

12

B:

144

C:

0

D:

132

第8题(1.0分)

C语言执行程序的开始执行点是()。

A:

程序中第一条可以执行语言

B:

程序中第一个函数

C:

程序中的main函数

D:

包含文件中的第一个函数

第9题(1.0分)

若给定条件表达式(M)?

(a++):

(a--),则其中表达式M()。

A:

和(M==0)等价

B:

和(M==1)等价

C:

和(M!

=0)等价

D:

和(M!

=1)等价

第10题(1.0分)

执行下列语句后,a和b的值分别为()。

inta,b;

a=1+'a';

b=2+7%-4-'A';

A:

-63,-64

B:

98,-60

C:

1,-60

D:

79,78

第11题(1.0分)

已知year为整型变量,不能使表达式(year%4==0&&year%100!

=0)

||year%400==0的值为“真”的数据是()。

A:

1990

B:

1992

C:

1996

D:

2000

第12题(1.0分)

设有如下定义:

structsk{inta;floatb;}data,*p;

若要使p指向data中的a域,正确的赋值语句是()。

A:

p=(structsk*)&data.a;

B:

p=(structsk*)data.a;

C:

p=&data.a;

D:

*p=data.a;

第13题(1.0分)

下列程序的输出结果是()。

main()

{

printf("%d\n",null);

}

A:

0

B:

变量无定义

C:

-1

D:

1

第14题(1.0分)

设有定义:

intx,*p=&x;下面表达式中错误的是

A:

&*x;

B:

*&x;

C:

&*p;

D:

*&p;

第15题(1.0分)

以下能正确说明一维数组的选项是

A:

intnum[];

B:

#defineN100

intnum[N];

C:

intnum[0…100];

D:

intN=100;intnum[N];

第16题(1.0分)

下列数组说明中,正确的是()。

A:

staticcharstr[]="China";

B:

staticcharstr[];str="China";

C:

staticcharstr1[5],str2[]={"China"};str1=str2;

D:

staticcharstr1[],str2[];str2={"China"};strcpy(str1,str2);

第17题(1.0分)

以下不符合C语言语法的赋值语句是()。

A:

j++;

B:

j=j=5;

C:

k=2*4,k*4;

D:

y=float(j);

第18题(1.0分)

下面选择中正确的赋值语句是(设chara[5],*p=a;)()。

A:

p="abcd";

B:

a="abcd";

C:

*p="abcd";

D:

*a="abcd";

第19题(1.0分)

设j和k都是int类型,则for循环语句

for(j=0,k=-1;k=1;j++,k++)printf("****\n");()。

A:

循环结束的条件不合法

B:

是无限循环

C:

循环体一次也不执行

D:

循环体只执行一次

第20题(1.0分)

若k,g均为int型变量,则下列语句的输出为()。

k=017;g=111;printf("%d\t",++k);printf("%x\n",g++);

A:

156f

B:

1670

C:

1571

D:

166f

第21题(1.0分)

以下对C语言函数的描述中,正确的是()。

A:

C程序必须由一个或一个以上的函数组成

B:

C函数既可以嵌套定义又可以递归调用

C:

函数必须有返回值,否则不能使用函数

D:

C程序中有调用关系的所有函数必须放在同一个程序文件中

第22题(1.0分)

在位运算中,操作数每右移一位,其结果相当于()。

A:

操作数乘以2

B:

操作数除以2

C:

操作数乘以16

D:

操作数除以16

第23题(1.0分)

在以下给出的表达式中,与do--while(E)语句中的(E)不等价的

表达式是()。

A:

(!

E==0)

B:

(E>0||E<0)

C:

(E==0)

D:

(E!

=0)

第24题(1.0分)

在C语言中,if语句后的一对原括号中,用以决定分支的流程的表

达式()。

A:

只能用逻辑表达式

B:

只能用关系表达式

C:

只能用逻辑表达式或关系表达式

D:

可用任意表达式

第25题(1.0分)

以下运算符中,优先级最高的运算符是()。

A:

=

B:

!

=

C:

*(乘号)

D:

()

第26题(1.0分)

设C语言中,int类型数据占2个字节,则long类型数据占()。

A:

1个字节

B:

2个字节

C:

4个字节

D:

8个字节

第27题(1.0分)

当定义一个结构体变量时,系统分配给它的内存是()。

A:

各成员所需内存量的总和

B:

结构中第一个成员所需内存量

C:

结构中最后一个成员所需内存量

D:

成员中占内存量最大者所需的容量

第28题(1.0分)

以下对结构体变量stu1中成员age的非法引用是

structstudent

{intage;

intnum;

}stu1,*p;

p=&stu1;

A:

stu1.age

B:

student.age

C:

p->age

D:

(*p).age

第29题(1.0分)

在C语言中,能代表逻辑值“真”的是()。

A:

True

B:

大于0的数

C:

非0整数

D:

非0的数

第30题(1.0分)

设有说明int(*ptr)[M];其中标识符ptr是()。

A:

M个指向整型变量的指针

B:

指向M个整型变量的函数指针

C:

一个指向具有M个整型元素的一维数组的指针

D:

具有M个指针元素的一维指针数组,每个元素都只能指向整型量

第31题(1.0分)

Thenumber5.16819e-2couldbewritteninafloating-pointformas:

A:

0.0516819

B:

5.16819

C:

51.6819

D:

561.869

第32题(1.0分)

经过下列的语句intj,a[10],*p;定义后,下列语句中合法的是()。

A:

p=p+2;

B:

p=a[5];

C:

p=a[2]+2;

D:

p=&(j+2);

第33题(1.0分)

以下的选择中,正确的赋值语句是()。

A:

a=1,b=2

B:

j++

C:

a=b=5;

D:

y=int(x)

第34题(1.0分)

下列程序的输出结果是()。

main()

{intx=1,y=0,a=0,b=0;

switch(x)

{

case1:

switch(y)

{

case0:

a++;break;

case1:

b++;break;

}

case2:

a++;b++;break;

case3:

a++;b++;break;

}

printf("a=%d,b=%d\n",a,b);

}

A:

a=1,b=0

B:

a=2,b=1

C:

a=1,b=1

D:

a=2,b=2

第35题(1.0分)

若有下列定义,则对a数组元素地址的正确引用是()。

inta[5],*p=a;

A:

*(p+5)

B:

*p+2

C:

*(a+2)

D:

*&a[5]

第36题(1.0分)

执行下列语句后的输出为()。

intj=-1;

if(j<=1)printf("****\n");

elseprintf("%%%%\n");

A:

****

B:

%%%%

C:

%%%%c

D:

有错,执行不正确

第37题(1.0分)

经下列语句定义后,sizeof(x),sizeof(y),sizeof(a),sizeof(b)在

微机上的值分别为()。

charx=65;

floaty=7.3;

inta=100;

doubleb=4.5;

A:

2,2,2,4

B:

1,2,2,4

C:

1,4,2,8

D:

2,4,2,8

第38题(1.0分)

下列程序的输出结果是()。

main()

{inta=7,b=5;

printf("%d\n",b=b/a);

}

A:

0

B:

5

C:

1

D:

不确定值

第39题(1.0分)

若已定义x为int类型变量,下列语句中说明指针变量p的正确语句是()。

A:

intp=&x;

B:

int*p=x;

C:

int*p=&x;

D:

*p=*x;

第40题(1.0分)

以下函数调用语句中实参的个数是()。

func((e1,e2),(e3,e4,e5));

A:

2

B:

3

C:

5

D:

语法错误

第41题(1.0分)

若已定义:

inta[9],*p=a;并在以后的语句中未改变p的值,则不能表示a[1]地址的表达式是

A:

p+1

B:

a+1

C:

a++

D:

++p

第42题(1.0分)

在下列程序段中,枚举变量c1,c2的值依次是()。

enumcolor{red,yellow,blue=4,green,white}c1,c2;

c1=yellow;c2=white;

printf("%d,%d\n",c1,c2);

A:

1,6

B:

2,5

C:

1,4

D:

2,6

第43题(1.0分)

Basedonthefollowingarraydeclaration,whichofthefollowingisNOTavalidelement?

intday[5]

A:

day[1+2]

B:

day[1*2]

C:

day[2*3]

D:

day[2%3]

 

第44题(1.0分)

以下对结构体变量stu1中成员num的非法引用是__

structstudent

{intage;

intnum;

}stu1,*p;

p=&stu1;

A:

stu1.num

B:

student->num

C:

(*p).num

D:

p->num

第45题(1.0分)

下列标识符中,非法的C语言标识符是

A:

sum

B:

5AB

C:

temp_3

D:

_123

第46题(1.0分)

以下运算符中,优先级最高的运算符是()。

A:

*=

B:

>=

C:

(类型)

D:

+

第47题(1.0分)

下列定义数组的语句中不正确的是()。

A:

staticinta[2][3]={1,2,3,4,5,6};

B:

staticinta[2][3]={{1},{4,5}};

C:

staticinta[][3]={{1},{4}};

D:

staticinta[][]={{1,2,3},{4,5,6}};

第48题(1.0分)

下列说法不正确的是()。

A:

主函数main中定义的变量在整个文件或程序中有效

B:

不同函数中,可以使用相同名字的变量

C:

形式参数是局部变量

D:

在一个函数内部,可以在复合语句中定义变量,这些变量只在复合语句中有效

第49题(1.0分)

Giventhefollowingdeclaration:

intcar_n;

whichofthefollowingpointerdeclarationsisvalid?

A:

ptr=&car_n;

B:

int*ptr=&car_n;

C:

int*ptr;

D:

intptr=&car_n;

 

第50题(1.0分)

表达式1,3,5,7的值为

A:

1

B:

3

C:

5

D:

7

第51题(1.0分)

以下标识符中,不能作为合法的C用户定义标识符的是()。

A:

For

B:

Printf

C:

WORD

D:

sizeof

第52题(1.0分)

C语言中函数调用的方式有()。

A:

函数调用作为语句一种

B:

函数调用作为函数表达式一种

C:

函数调用作为语句或函数表达式两种

D:

函数调用作为语句、函数表达式或函数参数三种

第53题(1.0分)

执行下列语句后变量x和y的值是()。

y=10;x=y++;

A:

x=10,y=10

B:

x=11,y=11

C:

x=10,y=11

D:

x=11,y=10

第54题(1.0分)

设有intx=11;则表达式(x++*1/3)的值是()。

A:

3

B:

4

C:

11

D:

12

第55题(1.0分)

以下数值中,不正确的八进制数或十六进制数是()。

A:

0x16

B:

16

C:

-16

D:

0xaaaa

第56题(1.0分)

变量p为指针变量,若p=&a,下列说法不正确的是()。

A:

&*p==&a

B:

*&a==a

C:

(*p)++==a++

D:

*(p++)==a++

第57题(1.0分)

C语言允许函数值类型缺省定义,此时该函数值隐含的类型是

A:

float

B:

int

C:

long

D:

double

第58题(1.0分)

设C语言中,int类型数据占2个字节,则unsigned类型数据占()。

A:

1个字节

B:

2个字节

C:

4个字节

D:

8个字节

第59题(1.0分)

a,b为整型变量,二者均不为0,以下关系表达式中恒成立的是()。

A:

a*b/a*b==1

B:

a/b*b/a==1

C:

a/b*b+a%b==a

D:

a/b*b==a

第60题(1.0分)

以下运算符中,优先级最高的运算符是()。

A:

||

B:

%

C:

!

D:

==

第61题(1.0分)

C语言中的文件类型只有()。

A:

索引文件和文本文件两种

B:

ASCII文件和二进制文件两种

C:

文本文件一种

D:

二进制文件一种

第62题(1.0分)

若有下列定义和语句,则对a数组元素的非法引用是()。

inta[2][3],(*pt)[3];pt=a;

A:

pt[0][0]

B:

*(pt+1)[2]

C:

*(pt[1]+2)

D:

*(a[0]+2

第63题(1.0分)

设有以下语句,若0

charstr[4][2]={"aaa","bbb","ccc","ddd"},*strp[4];

intj;

for(j=0;j<4;j++)

strp[j]=str[j];

A:

strp

B:

str[k]

C:

strp[k]

D:

*strp

第64题(1.0分)

关于指针概念说法不正确的是()。

A:

一个指针变量只能指向同一类型变量

B:

一个变量的地址称为该变量的指针

C:

只有同一类型变量的地址才能放到指向该类型变量的指针变量之中

D:

指针变量可以由整数赋,不能用浮点赋

第65题(1.0分)

fgets(str,n,fp)函数从文件中读入一个字符串,以下正确的叙述是()。

A:

字符串读入后不会自动加入'\0'

B:

fp是file类型的指针

C:

fgets函数将从文件中最多读入n-1个字符

D:

fgets函数将从文件中最多读入n个字符

第66题(1.0分)

在C语言中,为了结束由while语句构成的循环,while后一对圆括号

中表达式的值应该为()。

A:

0

B:

1

C:

True

D:

非0

第67题(1.0分)

若有以下定义:

chars='\092';则该语句()。

A:

使s的值包含1个字符

B:

定义不合法,s的值不确定

C:

使s的值包含4个字符

D:

使s的值包含3个字符

第68题(1.0分)

C语言的if语句嵌套时,if与else的配对关系是()。

A:

每个else总是与它上面的最近的if配对

B:

每个else总是与最外层的if配对

C:

每个else与if的配对是任意的

D:

每个else总是与它上面的if配对

第69题(1.0分)

Basedonthefollowingarraydeclaration,whichofthefollowingisNOTavalidelement?

()

intday[5]

A:

day[1+2]

B:

day[1*2]

C:

day[2%3]

D:

day[2*3]

第70题(1.0分)

C语言程序中,当调用函数时()。

A:

实参和虚参各占一个独立的存储单元

B:

实参和虚参可以共用存储单元

C:

可以由用户指定是否共用存储单元

D:

计算机系统自动确定是否共用存储单元

第71题(1.0分)

下列程序的输出结果是()。

main()

{inta=011;

printf("%d\n",++a);

}

A:

12

B:

11

C:

10

D:

9

第72题(1.0分)

执行下面程序后,输出结果是()。

main()

{a=45,b=27,c=0;

c=max(a,b);

printf("%d\n",c);

}

intmax(x,y)

intx,y;

{intz;

if(x>y)z=x;

elsez=y;

return(z);

}

A:

45

B:

27

C:

18

D:

72

第73题(1.0分)

若有下列定义,则对a数组元素地址的正确引用是()。

inta[5],*p=a;

A:

&a[5]

B:

p+2

C:

a++

D:

&a

第74题(1.0分)

下列各m的值中,能使m%3==2&&m%5==3&&m%7==2为真的是()。

A:

8

B:

23

C:

17

D:

6

第75题(1.0分)

在C语言程序中()。

A:

函数的定义可以嵌套,但函数的调用不可以嵌套

B:

函数的定义不可以嵌套,但函数的调用可以嵌套

C:

函数的定义和函数调用均可以嵌套

D:

函数的定义和函数调用不可以嵌套

第76题(1.0分)

Considerthefollowingstatement:

inti=90,j=0;

whichofthefollowingstatementsaretrue?

A:

(i>0)||(j>50)

B:

!

(j<1)

C:

i<3

D:

(j

第77题(1.0分)

以下函数调用语句中实参的个数是()。

exce((v1,v2),(v3,v4,v5),v6);

A:

3

B:

4

C:

5

D:

6

第78题(1.0分)

设C语言中,int类型数据占2个字节,则short类型数据占()。

A:

1个字节

B:

2个字节

C:

4个字节

D:

8个字节

第79题(1.0分)

Thenumber5.16819e-1couldbewritteninafloating-pointformas:

A:

0.516819

B:

51.6819

C:

516.819

D:

5618.69

第80题(1.0分)

下面能表示a不等于0的关系的是

A:

if(a<>0)

B:

if(!

a)

C:

if(!

a=0)

D:

if(a)

第81题(1.0分)

C语言程序中,若对函数类型未加显式说明,则函数的隐含说明类型为()。

A:

void

B:

double

C:

int

D:

char

第82题(1.0分)

按位与运算:

inta=7,b=13,c=a&b;变量c的值是

A:

19

B:

4

C:

5

D:

9

第83题(1.0分)

下列标识符中,非法的C语言标识符是( )

A:

sum

B:

5AB

C:

temp_3

D:

_123

第84题(1.0分)

以下描述中,正确的是()。

A:

预处理是指完成宏替换和文件包含中指定的文件的调用

B:

预处理指令只能位于C源文件的开始

C:

C源程序中凡是行首以#标识的控制行都是预处理指令

D:

预处理就是完成C编译程序对C源程序第一遍扫描,为编译词法和语法分析作准备

第85题(1.0分)

若已定义:

inta[9],*p=a;并在以后的语句中未改变p的值,则不能表示a[2]地址的表达式是

A:

a+2

B:

p+2

C:

++(a+1)

D:

(p+1)++

第86题(1.0分)

以下标识符中,不能作为合法的C用户定义标识符的是()。

A:

a3_b3

B:

void

C:

_123

D:

IF

第87题(1.0分)

执行下列语句后的结果为()。

intx=3,y;

int*px=&x;

y=*px++;

A:

x=3,y=4

B:

x=3,y=3

C:

x=4,y=4

D:

x=3,y不知

第88题(1.0分)

以下程序的输出结果是()。

main()

{chars[]="123",*p;

p=s;

printf("%c%c%c\n",*p++,*p++,*p++);

}

A:

123

B:

321

C:

213

D:

312

第89题(1.0分)

经过以下语句定义后,表达式z+=x>y?

++x:

++y的值为()。

intx=1,y=2,z=3;

A:

2

B:

3

C:

6

D:

5

第90题(1.0分)

下列数据中,为字符串常量的是()。

A:

A

B:

"house"

C:

Howdoyoudo.

D:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1