c语言期末模拟.docx

上传人:b****8 文档编号:11129934 上传时间:2023-02-25 格式:DOCX 页数:24 大小:21.43KB
下载 相关 举报
c语言期末模拟.docx_第1页
第1页 / 共24页
c语言期末模拟.docx_第2页
第2页 / 共24页
c语言期末模拟.docx_第3页
第3页 / 共24页
c语言期末模拟.docx_第4页
第4页 / 共24页
c语言期末模拟.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

c语言期末模拟.docx

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

c语言期末模拟.docx

c语言期末模拟

《c期末模拟》试卷

题号

总分

得分

0

0

0

一、单选题(共80分)

1、若已说明inta=-3;执行语句printf("%x",a);的结果是______。

%x为16进制

A、-3B、fffdC、8003D、fd

您的答案:

参考答案:

B

您的得分:

0题分:

1

2、C语言规定:

在一个源程序中,main函数的位置______。

A、必须在系统调用的库函数的后面B、必须在最后

C、必须在最开始D、可以任意

您的答案:

参考答案:

D

您的得分:

0题分:

1

3、假定有以下变量定义:

intk=7,x=12;则能使值为3的表达式是______。

A、x%=(k-k%5)B、x%=(k%=5)C、(x%=k)-(k%=5)D、x%=k-k%5

您的答案:

参考答案:

C

您的得分:

0题分:

1

4、a=1,b不论为正或为负——(即b为非0),逻辑表达式均为1的是_A____。

A、(a>=0‖b>=0)&&(a<0‖b<0)B、a*b>0

C、(a+b>0)&&(a+b<=0)D、(a>=0&&b>=0)&&(a<0&&b<0)

您的答案:

参考答案:

A

您的得分:

0题分:

1

5、若定义了intx=5,n=2;则表达式x%=(n=3)的值为______。

A、2B、1C、0D、15

您的答案:

参考答案:

A

您的得分:

0题分:

1

6、下列各数,不是正确的C语言int类型常数的是______。

A、-32768B、0XafC、037D、32768

您的答案:

参考答案:

D

您的得分:

0题分:

1

7、选出年龄在30到40(包括30,不包括40)之间的人,其C语言表达式应为______。

A、(年龄>=30)&(年龄<40)B、(年龄>=30)&&(年龄<40)

C、(40>年龄>=30)D、(年龄>=30)and(年龄<40)

您的答案:

参考答案:

B

您的得分:

0题分:

1

8、输出的结果是______。

main()

{inta=-1,b=4,k;

k=!

((++a<0)&&!

(b--<0));

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

A、103B、104C、013D、004

您的答案:

参考答案:

B

您的得分:

0题分:

1

9、在C语言中,整数-7在内存中的存储的形式为______。

A、0000000000000111B、1111111111111001

C、1111111111111000D、1000000000000111

您的答案:

参考答案:

B

您的得分:

0题分:

1

10、在C语言中,字符(char)型数据在内存中是以______形式存储的。

A、补码B、ASCII码C、原码D、反码

您的答案:

参考答案:

B

您的得分:

0题分:

1

11、执行语句printf("%d\n",!

!

9);的输出结果是______。

A、-9B、1C、9D、0

您的答案:

参考答案:

B

您的得分:

0题分:

1

12、假定w、x、y、z、m均为int型变量,有如下程序段:

w=1;x=2;y=3;z=4;

m=(w

w:

x;m=(m

m;y;m=(m

m;z;

则该程序运行后,m的值是______。

A、1B、3C、2D、4

您的答案:

参考答案:

A

您的得分:

0题分:

1

13、语句:

printf("%d",(a=2)&&(b=-2));的输出结果是______。

A、-1B、结果不确定C、无输出D、1

您的答案:

参考答案:

D

您的得分:

0题分:

1

14、下列表达式中,能正确表示a不等于0时,表达式值为真的是______。

A、a<>0B、aC、a=0D、!

a

您的答案:

参考答案:

B

您的得分:

0题分:

1

15、已知字母a的ASCII十进制代码为97,则执行以下语句后的输出为______。

Chara='a';a--;printf("%d,%c\n",a+'2'-'0',a+'3'-'0');

A、a--运算不合法,故有语法错B、b,c

C、98,cD、格式描述和输出项不匹配,输出无定值

您的答案:

参考答案:

C

您的得分:

0题分:

1

16、以下程序运行的结果为______。

main()

{intw=4,x=3,y=2,z=1;

printf("%d\n",w

w:

z

z:

x);}

A、78B、1.3

C、1D、以上3个答案均错误

您的答案:

参考答案:

C

您的得分:

0题分:

1

17、在C语言中,能正确表示a≥100或a≤10的关系表达式是______。

A、a>=100||a<=10B、a>=100|a<=10C、a>=100ora<=10D、a>=100&&a<=10

您的答案:

参考答案:

A

您的得分:

0题分:

1

18、表示关系x<=y<=z的C语言表达式为______。

A、(x<=y)AND(y<=z)B、(x<=y)&&(y<=z)

C、(x<=y<=z)D、(x<=y)&(y<=z)

您的答案:

参考答案:

B

您的得分:

0题分:

1

19、在C语言的if语句中,用作判断的表达式为______。

A、逻辑表达式B、算术表达式C、任意表达式D、关系表达式

您的答案:

参考答案:

C

您的得分:

0题分:

1

20、表达式(float)(9/2)>4.5?

(c=2,c+2):

3的结果是______。

A、5B、2C、3D、4

您的答案:

参考答案:

C

您的得分:

0题分:

1

21、下描述中正确的是______。

A、由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句。

B、在do-while循环体中,一定要有能使while后面表达式的值变为零("假")的操作

C、do-while循环由do开始,在while(表达式)后面不能写分号

D、do-while循环中,根据情况可以省略while

您的答案:

参考答案:

B

您的得分:

0题分:

2

22、若定义了inti;执行语句for(i=1;i++<4;);后变量i的值是______。

A、4B、3C、5D、不定

您的答案:

参考答案:

C

您的得分:

0题分:

2

23、下面程序段的运行结果是______。

x=y=0;

while(x<15)y++,x+=++y;

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

A、20,7B、6,12C、8,20D、20,8

您的答案:

参考答案:

C

您的得分:

0题分:

2

24、语句while(!

E);中表达式!

E等价于______。

A、E!

=0B、E==0C、E==1D、E!

=1

您的答案:

参考答案:

B

您的得分:

0题分:

2

25、下列程序中,循环执行的次数是______。

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

A、0次B、1次C、无数次D、2次

您的答案:

参考答案:

A

您的得分:

0题分:

2

26、以下能正确计算1×2×3×…×10的程序段是______。

A、do{i=1;s=1;

s=s*i;

i++;

}

while(i<=10);

B、do{i=1;s=0;

s=s*i;

i++;

}

while(i<=10);

C、i=1;s=0;

do{s=s*i;

i++;

}

while(i<=10);

D、i=1;s=1;

do{s=s*i;

i++;

}

while(i<=10);

您的答案:

参考答案:

D

您的得分:

0题分:

2

27、下面程序的功能是将从键盘输入的一对数,由小到大排序输出。

当输入一对相等数时结束循环,请选择填空______。

inta,b,t;

scanf("%d%d",&a,&b);

while(______)

{if(a

{t=a;a=b;b=t;}

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

scanf("%d%d",&a,&b);

}

A、a!

=bB、!

a=bC、a==bD、a=b

您的答案:

参考答案:

A

您的得分:

0题分:

2

28、下面程序段的运行结果是______。

a=1;b=2;c=2;

while(a

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

A、1,2,0B、2,1,1C、1,2,1D、2,1,0

您的答案:

参考答案:

A

您的得分:

0题分:

2

29、下列程序段中,do-while循环的循环体执行的次数是______。

inti=1;

do

{

i*=2;

}

while(i<100);

A、7次B、6次C、0次D、8次

您的答案:

参考答案:

A

您的得分:

0题分:

2

30、下面程序的功能是在输入的一批正整数中求出最大者,输入0结束循环,请选择填空。

inta,max=0;

scanf("%d",&a);

while(______)

{if(max

scanf("%d",&a);

}

printf("%d",max);

A、a==0B、!

a==1C、aD、!

a

您的答案:

参考答案:

C

您的得分:

0题分:

2

31、以下for循环的执行次数是______。

for(x=0,y=0;(y=123)&&(x<4);x++);

A、执行3次B、循环次数不定C、执行4次D、是无限循环

您的答案:

参考答案:

C

您的得分:

0题分:

2

32、语句while(exp);中的表达式exp等价于______。

A、exp==1B、exp!

=1C、exp!

=0D、exp==0

您的答案:

参考答案:

C

您的得分:

0题分:

2

33、C在语言中,while和do-while循环的主要区别是______。

A、do-while允许从外部转到循环体内

B、while的循环控制条件比do-while的循环控制条件严格

C、do-while的循环体至少无条件执行一次

D、do-while的循环体不能是复合语句

您的答案:

参考答案:

C

您的得分:

0题分:

2

34、以下对字符数组str进行正确初始化的是______。

A、charstr[10];strcpy(str,"abcdefghijklmn");

B、charstr[10];str={"China"};

C、charstr[]={"China"};

D、charstr[10]={"abcdefghijklmn"};

您的答案:

参考答案:

C

您的得分:

0题分:

1

35、若有说明:

inta[3][4]={0};则下面正确的叙述是______。

A、数组a中每个元素均可得到初值0

B、此说明语句不正确。

C、数组a中各元素都可得到初值,但其值不一定为0。

D、只有元素a[0][0]可得到初值0

您的答案:

参考答案:

A

您的得分:

0题分:

1

36、下列对一维数组a进行初始化的正确写法是______。

A、inta[5]={0,1,2};B、inta[]={01234};

C、inta[5]={0,1,2,3,4,6};D、inta[5]=(0,1,2,3,4);

您的答案:

参考答案:

A

您的得分:

0题分:

1

37、以下能对二维数组a进行正确初始化的语句是______。

A、inta[][2]={{1,0,1},{},{1,1}};B、inta[][3]={{1,2,3},{4,5,6}};

C、inta[2][4]={{1,2,3},{4,5},{6}};D、inta[2][]={{1,0,1},{5,2,3}};

您的答案:

参考答案:

B

您的得分:

0题分:

1

38、对于如下之程序段,应有______。

chara[10],b[]="China";

a=b;

printf("%s",A);

A、程序出错,不能运行B、运行后将输出c

C、运行后将输出ChinaD、运行后将输出ch

您的答案:

参考答案:

A

您的得分:

0题分:

1

39、已知:

inta[10];则对a数组元素的正确引用是______。

A、a(5)B、a[3.5]C、a[10]D、a[10-10]

您的答案:

参考答案:

D

您的得分:

0题分:

1

40、有两个字符数组a,b,则以下正确的输入语句是______。

A、gets("a"),gets("b");B、gets(a,B);

C、scanf("%s%s",a,B);D、scanf("%s%s",&a,&B);

您的答案:

参考答案:

C

您的得分:

0题分:

1

41、执行下述程序后的输出结果是______。

#include

main()

{

intn[3],i,j,k;

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

n[i]=0;

k=2;

for(i=0;i

for(j=0;j

n[j]=n[i]+1;

printf("%d\n",n[1]);

}

A、3B、1C、0D、2

您的答案:

参考答案:

A

您的得分:

0题分:

1

42、下述对于c语言字符数组的描述中错误的是______。

A、字符数组中的字符串可以整体输入、输出

B、字符数组可以存放字符串

C、可以在赋值语句中通过赋值运算符"="对字符数组整体赋值

D、不可以用关系运算符对字符数组中的字符串进行比较

您的答案:

参考答案:

C

您的得分:

0题分:

1

43、合法的数组说明语句是______。

A、inta[5]={0,1,2,3,4,5};B、inta[]="string";

C、chara="string";D、chara[]={0,1,2,3,4,5};

您的答案:

参考答案:

D

您的得分:

0题分:

1

44、执行下述程序的输出结果是______。

#include

intx=1;

intf1()

{

return(++x);

}

intf2(intx)

{

x=3;

return(++x);

}

intf3(intx)

{

return(++x);

}

main()

{

intx=10;

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

printf("%d\n",f2(x));

printf("%d\n",f3(x));

}

A、10

11

11B、2

2

2C、10

14

11D、2

4

11

您的答案:

参考答案:

D

您的得分:

0题分:

1

45、执行下述程序的运行结果是______。

#include

longfib(intn)

{

longres;

switch(n)

{

case0:

res=0;break;

case1:

res=1;break;

default:

res=fib(n-1)+fib(n-2);f5+f4f4+f32f4+f33f3+2f25f2+3f18f1

}

return(res);

}

main()

{

printf("%ld\n",fib(6));

}

A、21B、8C、13D、5

您的答案:

参考答案:

B

您的得分:

0题分:

1

46、以下说法不正确的是______。

 

A、在不同函数中可以使用相同名字的变量

B、在函数内的复合语句中定义的变量在本函数范围内有效

C、在函数内定义的变量只在本函数内有效

D、形式参数是局部变量

您的答案:

参考答案:

B

您的得分:

0题分:

1

47、以下程序的正确运行结果是______。

#include

voidnum()

{externintx,y;inta=15,b=10;

x=a-b;

y=a+b;

}

intx,y;

main()

{inta=7,b=5;

x=a+b;

y=a-b;

num();

printf("%d,%d\n",x,y);

}

A、12,2B、1,12C、5,25D、不确定

您的答案:

参考答案:

C

您的得分:

0题分:

1

48、以下说法中正确的是______。

A、c语言程序总是从第一个定义的函数开始执行

B、c语言程序,要调用的函数必须在主函数main中定义

C、c评议程序中的主函数main必须放在程序的开始部分

D、c语言程序总是从主函数main开始执行

您的答案:

参考答案:

D

您的得分:

0题分:

1

49、决定c语言中函数返回值类型的是______。

A、定义函数时在函数首部中所指定的类型(若缺省,则隐含为int型)

B、调用该函数的主调函数类型

C、调用函数时临时指定的类型

D、return语句中的表达式类型

您的答案:

参考答案:

A

您的得分:

0题分:

1

50、函数调用语句f((el,e2),(e3,e4,e5));中参数的个数是______。

A、1B、5C、4D、2

您的答案:

参考答案:

D

您的得分:

0题分:

1

51、执行下述程序的输出结果是______。

#include

intpower(intx,inty);

main()

{

floata=2.6,b=3.4;

intp;

p=power((int)a,(int)b);

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

}

intpower(intx,inty)

{

inti,p=1;

for(i=y;i>0;i--)

p=p*x;

return(p);

}

A、9B、8C、27D、81

您的答案:

参考答案:

B

您的得分:

0题分:

1

52、执行下列程序后的输出结果是______。

intfun(intx1,intx2)

{intx;x1>x2?

(x=3):

(x=4);return(x+x1);}

main()

{printf("%d\n",fun(7,8));}

A、11B、10C、9D、12

您的答案:

参考答案:

A

您的得分:

0题分:

1

53、以下程序运行后,输出结果是______。

#include

func(inta,intb)

{

staticintm=0,i=2;

i+=m+1;

m=i+a+b;

return(m);

}

main()

{

intk=4,m=1,p;

p=func(k,m);

printf("%d,",p);

p=func(k,m);

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

}

A、8,17B、8,16C、8,15D、8,8

您的答案:

参考答案:

A

您的得分:

0题分:

1

54、执行下述程序的输出结果是______。

#include

main()

{

inti,x[3][3]={9,8,7,6,5,4,3,2,1},*p=&x[1][1];

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

printf("%d",p[i]);

printf("\n");

}

A、52B、51C、97D、53

您的答案:

参考答案:

D

您的得分:

0题分:

1

55、若已定义char*string="acegik";则以下表达式的值不等于'c'的是______。

A、string[1]B、*(string+1)

C、*string+1D、*++string

您的答案:

参考答案:

C

您的得分:

0题分:

1

56、执行以下程序段后,m的值为______。

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

intm,*p;

p=&a[0][0];

m=(*p)*(*(p+2))*(*(p+4));

A、15B、12C、13D、14

您的答案:

参考答案:

A

您的得分:

0题分:

1

57、下列程序的输出结果是______。

Main()

{charstring[]={"CHINA"},*p=string;

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

}

A、AB、0C、5D、出错

您的答案:

参考答案:

B

您的得分:

0题分:

1

58、设有以下定义:

inta[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};

int(*prt)[3]=a,*p=a[0];

则下列能够正确表示数组元素a[1][2]的表达式是______。

A、*(*(p+5))B、*((*prt+1)[2])C、(*prt+1)+2D、*(*(a+1)+2)

您的答案:

参考答案:

D

您的得分:

0题分:

1

59、若定义了inta[]={1,2,3},*p=a;则执行*p++;(*p)++;后,a[0],a[1],a[2]的值依次是______。

A、1,3,3B、2,3,4C、1,2,4D、1,2,3

您的答案:

参考答案:

A

您的得分:

0题分:

1

60、若定义了intx,*pb;则下列赋值语句中,正确的是______。

A、pb=&x;B、*pb=&x;C、pb=x;D、pb=*x;

您的答案:

参考答案:

A

您的得分:

0题分:

1

61、若定义了

struct

{intday,mouth,year;}a,*p=&a;

则下列对结构体成员引用形式中,不正确的是______。

A、(*p).dayB、a->dayC、p->dayD、a.day

您的答案:

参考答案:

B

您的得分:

0题分:

1

62、设有以下说明语句

structex

{intx;floaty;charz;}example;

则下面的叙述中不正确的是______。

A、structex是结构体类型B、struct结构体类型的关键字

C、example是结构体类型名D、x,y,z都是结构体成员名

您的答案:

参考答案:

C

您的得分

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

当前位置:首页 > 表格模板 > 合同协议

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

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