c语言试题.docx

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

c语言试题.docx

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

c语言试题.docx

c语言试题

□判断题

1.char类型数据内部采用整数存储方式,因此它和int型数据可以互为通用

&A.对

口B.错

2.在C语言中,保存字符串“B'实质上是保存字符’B'和'\0'两个符号。

因A.对

打B.错

3.在进行赋值转换时,变量的类型被自动转换为赋值号右边的表达式值的类型。

A.对

曰B.错

4.假定已有整型变量x的定义,则(x+1)++是一个合法的表达式。

21A.对

凸B.错

5.两个变量交换数据时常使用一个工作变量。

日A.对

B.错

6.在C语言中用0表示逻辑值“真”,用非0表示逻辑值“假”。

匕1A.对

口B.错

7.while后的表达式只能是逻辑或关系表达式。

日A.对

胡B.错

8.语句while(E);中的表达式E等价于E!

=0

旦A.对

B.错

9.函数strcpy(str1,st⑵是将字符串str2连接到字符串strl之后

打A.对

*B.错

10.在C语言中引用数组元素时,其数组的下标可以是任何类型的表达式。

胡A.对

*B.错

11.C程序中所有的全局变量都是静态存储的

*A.对

口B.错

12.有参的宏,其参数参与运算,宏替换要先完成参数的计算,然后再执行替换

丄A.对

*B.错

13.typedef的作用是给数据类型取一个别名。

*A.对

打B.错

14.结构体变量可以整体赋值,但不能整体比较

打A.对

日B.错

15.语句inti,*p=&i;是正确的C定义。

国A.对

AB.错

16.文件正常关闭时返回1。

A.对

*B.错

•-单选题

1.有以下程序

#include"stdio.h"

voidmain()

{floata=b=2,result;

result=a/b;

printf("result=%f\n",result);}

正确的说法是()。

図A.因为变量声明问题导致编译岀错

土B.因为result=a/b;语句有误导致编译岀错

C.输岀结果为result=2.000000

㈡D.输岀结果为result=1.000000

2.下列程序运行时输入34,则程序的输岀结果是()

#include"stdio.h"

intmulti(inta,intb)

{returna*b;}

voidmain()

{intx,y,t;

printf("Pleaseinputtwointegers(xandy):

");

scanf("%d%d",&x,&y);

t=multi(x,y);

printf("%d\n",t);}

A.3

B.4

C.7

13D.12

3.如果将一个函数的返回值类型说明为void,则表示。

日A.该函数可以返回任意类型的值

紀IB.该函数不能返回任何值

已C.该函数可以返回基本类型的值

D.该函数是main函数,是程序运行的起点

4.对于int型常量,不正确的是。

凸A.029

B.-25

C.0X2A

D.-0X28

5.若有定义:

inta=7;floatx=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是()。

4A.2.500000

B.4.50000

C.3.500000

c

D.0.00000

6.已知i、j、k为int型变量,若从键盘输入:

1,2,3,使i的值为1,j的值为2,k的值为3,以下选项中正确的输入语句

是()。

C

A.scanf("%2d%2d%2d",&i,&j,&k);

B.scanf("%d%d%d",&i,&j,&k);

*C.scanf("%d,%d,%d",&i,&j,&k);

L3D.scanf("i=%d,j=%d,k=%d",&i,&j,&k);

7.设有定义:

intk=1,m=2;floatf=7;,则以下选项中错误的表达式是

胡A.k=k+=k

胡B.-k++

*C.k%int(f)

D.f=k%m

8.表达式:

(int)((double)9/2)-(9)%2的值是。

A.0

B.3

t-3C.4

冷D.5

9.以下程序运行后输岀的结果是。

#include

main()

{inta=1,b=0;

printf("%d,",b=a+b);

printf("%d",a=2*b);}

A.0,0

DIB.1,0

口C.3,2

二D.1,2

10.执行以下程序段后,x的值为。

inta=14,b=15,x;

charc='A';

x=(a&&b)&&(c<'B');

A.true

*B.1

tzlC.false

PID.O

11.已知intx=10,y=20,z=30;,以下语句执行后x,y,z

if(x>y)

z=x;x=y;y=z;

printf("%d,%d,%d",x,y,z);

㈡A.10,20,30

B.20,30,20

胡C.20,30,10

岡D.20,30,30

12.下列程序的输岀结果是。

#inlude"stdio.h"

main()

{inta=0,b=0,c=0;

if(++a>0||++b>0)++c;

printf("%d,%d,%d",a,b,c);}

A.0,0,0

B.1,1,1

日C.1,0,1

胡D.0,1,1

13.设有定义inti;,则表达式(i=1,i=10)?

i++||++i:

++i

A.10

的值是

的值是

日B.1

C.2

二D.3

14.

C语言表达式为

为表示关系x>y>z,应使用的

胡A.(x>=y)&&(y>=z)

B.(x>=y)and(y>=z)

卜丿C.x>=y>=z

胡D.(x>=Y)&&(Y>=z)

15.有以下程序

#include"stdio.h"

voidmain()

{inti,s=1;

for(i=1;i<50;i++)

if(!

(i%5)&&!

(i%3))s+=i;

printf("%d\n",s);}

程序的输岀结果是()。

A.409

戸IB.277

C.1

*D.91

16.下述程序的输岀结果是

#include"stdio.h"

voidmain()

{inta=0,b=0,c=0,i;

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

switch(i)

{case0:

a=i++;

case1:

b=i++;

case2:

c=i++;

case3:

i++;

}

printf("%d,%d,%d,%d\n",a,b,c,i);}

A.0,1,3,4

B.1,2,3,4

卫C.0,1,2,5

D.0,2,3,4

17.以下程序运行后的输岀结果是

#include"stdio.h"

voidmain()

{inti,j,x=O;

for(i=0;i<2;i++)

{x++;

for(j=0;j<=3;j++){if(j%2)continue;x++;}

x++;

}

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

A.x=4

 

D.x=12

18.

>=8)break;

以下程序的输岀结果是。

#include"stdio.h"voidmain(){inta=1,b;for(b=1;b<=10;b++){if(a

if(a%2==1){a+=5;continue;}a-=3;}printf("%d\n",b);}

日A.3

*B.4

C.5

日D.6

19.以下程序输岀结果是。

#include"stdio.h"voidmain(){inti=0,s=0;for(;;){if(i==3||i==5)continue;

if(i==6)break;i++;s+=i;};printf("%d\n",s);}

已A.10

B.13

巨C.21

胡D.程序进入死循环

20.下面程序的运行结果是。

#include

main()

{inta[5],i;

for(i=0;i<5;i++)

{a[i]=9*(i-2+4*(i>3))%5;

printf("%2d",a[i]);}}

凶A.-3-4044

B.-3-4043

C.-3-4042

f刖D.-3-4040

21.下面程序的运行结果是。

#include

main()

{chars[12]="abook!

";

printf("%d",strlen(s));}

口A.6

21B.7

匕1C.10

r

D.12

22.设有定义:

chara[80];inti=0;,以下不能将一行带有空格的字符串(不超过80个字符)正确读入的是

A.gets(a);

'刖B.while((a[i++]=getchar())!

='\n');a[i]='\0';

+C.scanf("%s",a);

D.do{scanf("%c",&a[i]);}while(a[i++]匸'\n');a[i]='\O';

23.下面程序的运行结果是。

#include"stdio.h"main(){chars[]="012xy";inti,n=0;for(i=0;s[i]!

=0;i++)

if(s[i]>='a'&&s[i]<='z')n++;printf("%d\n",n);}

 

C.

D.

24.在C语言中,函数返回值类型在定义时可以缺省,此时函数值的隐含类型是

hA.void

B.float

C.double

D.int

25.以下叙述中正确的是。

*A.局部变量说明为static,其生存期将得到延长

口B.全局变量说明为static,其作用域将被扩大

C.任何存储类的变量在未赋初值时,其值都是不确定的

D.属于不同函数的局部变量不能同名

26.下列的结论中只有是正确的。

*A.所有的递归程序均可以采用非递归算法实现

B.只有部分递归程序可以用非递归算法实现

C.所有的递归程序均不可以采用非递归算法实现

D.以上三种说法都不对

27.下列程序的输出结果是。

#include"stdio.h"intfun(intx,inty,intcp,intdp){cp=x*x+y*y;dp=x*x-y*y;}voidmain()

{inta=4,b=3,c=5,d=6;fun(a,b,c,d);printf("%d%d\n",c,d);}

口A.169

B.43

 

日C.259

D.56

28.在定义一个共用体变量时,系统分配给它的内存是

日A.各成员所需内存之和

B.第一个成员所需内存

日C.成员中占用内存最大者

D.任意一个成员所需内存

29.以下程序段是计算学生的三门功课平均分,空白处对函数average正确调用方式是。

structStudent

{charname[10];intscore1;intscore2;intscore3;}stu;intfloataverage(structStudentstu)

{intaver;aver=(stu.score1+stu.score2+stu.score3)/3;returnaver;}main(){struct

Strudentstu;intaver;stu.score1=78;stu.score2=86;stu.score3=75;printf(“averag

is:

%d”,aver);}

r

A.average(stu);

 

30.变量的指针,其含义是指该变量的

日A.值

*B.地址

C.名

㈡D.一个标志

31.若有定义语句:

doublea,*p=&a;以下叙述中错误的是。

旦A•定义语句中*是一个间接访问运算符

B•定义语句中*号只是一个说明符

巨C.定义语句中p只能存放double类型变量的地址

D.定义语句中,*p=&a把变量a的地址作为初始赋给指针变量p

32.设fp已定义,执行语句fp=fopen("file","w");后,以下针对文本文件file操作叙述的选项中正确的是

A.写操作结束后可以从头开始读

已B.只能写不能读

C.可以在原有内容后追加

D.可以随意读和写

33.系统的标准输入文件是指

A.显示器

曰B.硬盘

*C.键盘

口D.软盘

问答题

1.从键盘上输入任意字符,判断其是否为数字字符。

回答:

[此文档可自行编辑修改,如有侵权请告知删除,感谢您的支持,我们会努力把内容做得更

好]

 

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

当前位置:首页 > 求职职场 > 面试

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

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