C语言程序设计期末考试.docx

上传人:b****7 文档编号:16787936 上传时间:2023-07-17 格式:DOCX 页数:31 大小:24.60KB
下载 相关 举报
C语言程序设计期末考试.docx_第1页
第1页 / 共31页
C语言程序设计期末考试.docx_第2页
第2页 / 共31页
C语言程序设计期末考试.docx_第3页
第3页 / 共31页
C语言程序设计期末考试.docx_第4页
第4页 / 共31页
C语言程序设计期末考试.docx_第5页
第5页 / 共31页
C语言程序设计期末考试.docx_第6页
第6页 / 共31页
C语言程序设计期末考试.docx_第7页
第7页 / 共31页
C语言程序设计期末考试.docx_第8页
第8页 / 共31页
C语言程序设计期末考试.docx_第9页
第9页 / 共31页
C语言程序设计期末考试.docx_第10页
第10页 / 共31页
C语言程序设计期末考试.docx_第11页
第11页 / 共31页
C语言程序设计期末考试.docx_第12页
第12页 / 共31页
C语言程序设计期末考试.docx_第13页
第13页 / 共31页
C语言程序设计期末考试.docx_第14页
第14页 / 共31页
C语言程序设计期末考试.docx_第15页
第15页 / 共31页
C语言程序设计期末考试.docx_第16页
第16页 / 共31页
C语言程序设计期末考试.docx_第17页
第17页 / 共31页
C语言程序设计期末考试.docx_第18页
第18页 / 共31页
C语言程序设计期末考试.docx_第19页
第19页 / 共31页
C语言程序设计期末考试.docx_第20页
第20页 / 共31页
亲,该文档总共31页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

C语言程序设计期末考试.docx

《C语言程序设计期末考试.docx》由会员分享,可在线阅读,更多相关《C语言程序设计期末考试.docx(31页珍藏版)》请在冰点文库上搜索。

C语言程序设计期末考试.docx

C语言程序设计期末考试

2021年C语言程序设计期末考试

共85题,全部为选择题,考试时间90分钟,答完提交

一、选择题

您的姓名:

[填空题]*

_________________________________

1.判断两个字符串是否相等,应用()[单选题]*

A)if(a==b)

B)if(a=b)

C)if!

strcmp(a,b))(正确答案)

D)if(strcmp(a,b))

2.有以下程序(strcat()函数用来连接两个字符串),程序运行后的输出结果是(B)

#include

main()

{chara[20]="ABCD\0EFG\0",b[]="IJK";

strcat(a,b);

printf("%s\n",a);

}[单选题]*

A)ABCDE\0FG\0IJK

B)ABCDIJK(正确答案)

C)IJK

D)EFGIJK

3.若有定义inta[][4]={0,1,2,3,4,5,6,7,8,9,10,11};,则数组的第一维的大小为()[单选题]*

A)3(正确答案)

B)2

C)4

D)不确定

4.阅读下述程序:

(  )

#include

main()

{charstr[10],temp[10];

inti;

gets(temp);

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

{gets(str);

if(strcmp(temp,str)>0)

strcpy(temp,str);

}

print("%s",temp);

}

若输入为

China

U.S.A

Korea¥

Canada

Japan。

则输出是[单选题]*

A)Canada(正确答案)

B)Japan

C)Korea

D)China

5.以下语句(字符串内没有空格字符):

printf("%d\n",strlen("ats\n012\1\\"));

的输出结果是()[单选题]*

A)12

B)10

C)9(正确答案)

D)11

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

#include

main()

{charstr[12]={'s’,'t’,’r','i’,’n',’g’};

prinf("%d\n",strlen(str),sizeof(str));

}[单选题]*

A)12,12

B)6,12(正确答案)

C)7,12

D)12,6

7.若有定义inta[4][8];,则以下选项中对数组元素a[i][j](0<=j<4,0<=j<8)的错误引用是()[单选题]*

A)*(&a[0][0]+8*i+j)

B)*(a+i)[j](正确答案)

C)*(*(a+i)+j)

D)*(a[i]+j)

8.若定义inta[5];,则对数组元素地址的正确引用是()[单选题]*

A)&a[5]

B)a+2(正确答案)

C)a++

D)&a

9.以下程序段的输出结果是()

main()

{chara[2][4];

strcpy(a[0],"are");

strcpy(a[1],"you");

a[0][3]='&';

printf("%s\n",a);

}[单选题]*

A)are&you(正确答案)

B)you

C)are

D)&

10.以下程序段的输出结果是()

main()

{charch[3][5]={"AAAA","BBB","CC"};

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

}[单选题]*

A)"AAAA"

B)"BBB"(正确答案)

C)"CC"

D)"BBBCC"

11.下列描述中不正确的是:

()[单选题]*

A)字符型数组可以存放字符串

B)可以对字符型数组进行整体输入、输出

C)可以对整形数组进行整体输入、输出(正确答案)

D)不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值。

12.若要定义一个具有5个元素的整型数组,以下语句中错误的是:

()[单选题]*

A)inta[5]=[0];

B)intb[]={0,0,0,0,0};

C)intc[2+3];

D)intn=5;d[n];(正确答案)

13.以下叙述中不正确的是()[单选题]*

A)建立函数的目的之是为了提高程序的效率(正确答案)

B)建立函数的目的之一是为了提高程序的可读性

C)建立函数的目的之是为了提高程序员的生产效率

D)函数的递归调用不能提高程序的执行效率

14以下函数的类型是()

func(doublex)

{printf("%f\n",X*X);

}[单选题]*

A)与参数x的类型相同

B)void类型

C)int类型(正确答案)

D)无法确定

15.阅读以下程序:

()

f(intb[],intn)

{

inti,r;

r=1

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

r=r*b[i];

returnr

}

main()

{intx,a[]={2,3,4,5,6,7,8,9};

x=f(a,3);

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

}

上面程序输出结果是[单选题]*

A)720

B)120(正确答案)

C)24

D)6

16.C语言程序中,若对函数类型未加显式声明,则函数的隐含类型为()[单选题]*

A)double

B)int(正确答案)

C)char

D)void

17.以下对C语言函数的有关描述中,正确的是()[单选题]*

A)在C中,调用函数时,只能把实参的值传送给形参,形参的值不能传给实参(正确答案)

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

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

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

18.有下列程序,执行后的输出结果是()

fun(intx,inty){return(x+y);}

main()

{inta=l,b=2,c=3,sum;

sum-fun((a++,b++,a+b),c++);

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

}[单选题]*

A)6

B)7

C)8(正确答案)

D)9

19.以下函数调用语句中,含有的实参个数是()

func(expl,.(exp2,exp3),(exp4.exps,exp6):

[单选题]*

A)1

B)2

C)3(正确答案)

D)6

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

intf(a,b)

inta,b;//形参传统声明法

{intC

C=a;

if(a>b)c=I;elseif(a==b)c=0;elsec=-1;

returmC

}

main()

inti=2,p;

p=f(i,i+1);

printf("%d",p);

}[单选题]*

A)-1(正确答案)

B)0

C)1

D)2

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

main()

doublef();

inti,m=3;floata=0.0;

for(i=0;i

a+=f(i);

printf("%f\n",a);

}

doublef(intn)

{inti;doubles=1.0;

for(i=l;i<=n;i++)

s+=1.0/i;

returnS;

}[单选题]*

A)5.500000(正确答案)

B)3.000000

C)4.000000

D)8.25

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

fun(intx,inty,intz)

{z=x*x+y*y;

}

main()

{

inta=31;

fun(5,2,a);

printf("%d",a);

}[单选题]*

A)0

B)29

C)31(正确答案)

D)无定值

23.以下函数的功能是()

fun(chars[],chart[])

{inti=-1;

while(i++,s[i]==t[i]&&s[i]!

=‘\0’);

return(s[i]==’\0’&&t[i]==’\0’);

}[单选题]*

A)比较串s和t的长度

B)比较串s和t的大小

C)比较串s和t是否相等(正确答案)

D)将串1赋给串s

24.C语言程序中,当调用函数时,()[单选题]*

A)实参和形参各占一个独立的存储单元(正确答案)

B)实参和形参可以共用存储单元

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

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

25.下列程序执行后变量w中的值是()

intfun1(doublea){returna*=a;}

intfun2(doublex,doubley)

{doublea=0,b-0;

A=funl(x);b-=fun1(y);returm(int)(a+b);

}

main()

{doublew;w=fun2(1.1,2.0),..}[单选题]*

A)5

B)5

C)5.0(正确答案)

D)0.0

26.执行下列程序时,给变量x输入10,程序的输出结果是()

intfun(intn)

{if(n==1)return1;

else

return(n+fun(n-1));

}

main()

{intx;

scanf("%d",&x);x=fun(x);printf("%d\n",x);

}[单选题]*

A)55(正确答案)

B)54

C)65

D)45

27.下列程序执行后的输出结果是()

intfun(intx[],intn)

{staticintsum=0,i;

for(i=0;i

returnsum;

}

main()

inta(5)={1,2,3,4,5},b[4]={6,7,8,9},s=0;

s=fun(a,5)+fun(b,4);

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

}[单选题]*

A)45

B)50

C)60(正确答案)

D)55

28.以下程序运行后的输出结果是()

Voidfum(intp)

{intd-2;

p=d++;pintf(“%d”,p)}

main()

{inta=1;

fun(a);

printf("%d\n",a);}[单选题]*

A)32

B)12

C)21(正确答案)

D)22

29.下叙述中不正确的是:

( )[单选题]*

在函数中,通过return语句传回函数值

在函数中,可以有多条return语句

在C程序中,主函数main()后的一对园括号中也可以带有形参

在C程序中,调用函数必须在一条独立的语句中完成。

(正确答案)

30.以下程序的输出结果是:

()

fun(inta,intb,intc)

{c=a+b;

}

main()

{intc;

fun(3,6,c);

printf(“%d”;c);

}[单选题]*

A)0

B)3

C)9

D)无定值(正确答案)

31.以下叙述正确的是()。

[单选题]*

A)在对一个C程序进行编译的过程中,可发现注释中的拼写错误

B)在C程序中,main函数必须位于程序的最前面

C)C语言本身没有输入输出语句(正确答案)

D)C程序的每行中只能写一条语句

32.一个C程序的执行是从()。

[单选题]*

A)本程序的main函数开始,到main函数结束(正确答案)

B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束

C)本程序文件的第一个函数开始,到本程序main函数结束

D)本程序的main函数开始,到本程序文件的最后一个函数结束

33.以下叙述不正确的是()。

[单选题]*

A)一个C源程序必须包含一个main函数

B)一个C源程序可由一个或多个函数组成

C)C程序的基本组成单位是函数

D)在C程序中,注释说明只能位于一条语句的后面(正确答案)

34.计算机高级语言程序的运行方法有编译执行和解释执行两种,以下叙述中正确的是()。

[单选题]*

A)C语言程序仅可以编译执行(正确答案)

B)C语言程序仅可以解释执行

C)C语言程序既可以编译执行又可以解释执行

D)以上说法都不对

35.一个C语言程序是由()。

[单选题]*

A)一个主程序和若干个子程序组成

B)函数组成(正确答案)

C)若干过程组成

D)若干子程序组成

36.以下叙述中错误的是()。

[单选题]*

A)C语言的可执行程序是由一系列机器指令构成的

B)用C语言编写的源程序不能直接在计算机上运行

C)通过编译得到的二进制目标程序需要连接才可以运行

D)在没有安装C语言集成开发环境的机器上不能运行C源程序生成的.exe文件(正确答案)

37.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为()。

  x=(i=4,j=16,k=32)[单选题]*

A)4

B)16

C)32(正确答案)

D52

38.以下叙述正确的是()。

[单选题]*

A)C语言程序是由过程和函数组成的

B)C语言函数可以嵌套调用,例如:

fun(fun(x))(正确答案)

C)C语言函数不可以单独编译

D)C语言中除了main函数,其他函数不可作为单独文件形式存在

39.下列四组选项中,均不是C语言关键字的选项是()。

[单选题]*

A)dei2temp(正确答案)

B)getccharprintf

C)includecasescanf

D)whilegopow

40.下列四组选项中,均是不合法的用户标识符的选项是()。

[单选题]*

A)WP_0do

B)b-agotoint(正确答案)

C)floatla0_A

D)-123abcTEMP

41.下面不正确的字符常量是()。

[单选题]*

A)“c”(正确答案)

B)‘\\’’

C)‘’

D)‘K’

42.下列四组选项中,均是合法转义字符的选项是()。

[单选题]*

A)‘\”’‘\\’‘\n’(正确答案)

B)‘\’‘\017’‘\”’

C)‘\018’‘\f’‘xab’

D)‘\\0’‘\101’‘xlf’

43.以下叙述不正确的是()。

[单选题]*

A)在C程序中,逗号运算符的优先级最低

B)在C程序中,MAX和max是两个不同的变量

C)若a和b类型相同,在计算了赋值表达式a=b后,b中的值将放入a中,而b中的值不变

D)当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值(正确答案)

44.已知字母A的ASCII码为十进制数65,且c2为字符型,

则执行语句c2=‘A’+‘6’-‘3’后,c2中的值为()。

[单选题]*

A)D(正确答案)

B)68

C)不确定的值

D)C

45.以下叙述正确的是()。

[单选题]*

A)在C程序中,每行只能写一条语句

B)若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数(正确答案)

C)在C程序中,%是只能用于整数运算的运算符(字符型也可以)

D)在C程序中,无论是整数还是实数,都能被准确无误地表示

46.sizeof(float)是()。

[单选题]*

A)一个双精度型表达式

B)一个整型表达式(正确答案)

C)一种函数表达式

D)一个不合法的表达式

47.设有说明:

charw;intx;floaty;doublez; 则表达式w*x+z-y值的数据类型为()。

[单选题]*

A)float

B)char

C)int

D)double(正确答案)

48.设C语言中,一个int型数据在内存中占2个字节,则unsignedint型数据的取值范围为()。

[单选题]*

A)0~255

B)0~32767

C)0~65535(正确答案)

D)0~2147483647

49.设以下变量均为int类型,则值不等于7的表达式是()。

[单选题]*

A)(x=y=6,x+y,x+1)

B)(x=y=6,x+y,y+1)

C)(x=6,x+1,y=6,x+y)(正确答案)

D)(y=6,y+1,x=y,x+1)

50.下列变量定义中合法的是()。

[单选题]*

A)short_a=015;(正确答案)

B)doubleb=e2.5;

C)longdo=0xfdaL;

D)float2_and=1e-3;

51.有以下程序

#include

  main()

{intx=011;

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

  }

程序运行后的输出结果是()。

[单选题]*

A)12

B)11

C)10(正确答案)

D)9

52.以下正确的描述是().[单选题]*

A)continue语句的作用是结束整个循环的执行

B)只能在循环体内和switch语句体内使用break语句(正确答案)

C)在循环体内使用break语句或continue语句的作用相同

D)从多层循环嵌套中退出时,只能使用goto语句

53.putchar函数可以向终端输出一个()。

[单选题]*

A)整型变量表达式

B)实型变量值

C)字符串

D)字符或字符型变量值(正确答案)

54.根据下面的程序及数据的输入和输出形式,程序中输入语句的正确形式应该为()。

main()

{charch1,ch2,ch3;

输入语句

printf(“%c%%c”,ch1,ch2,ch3);

}输出形式:

ABC

输入形式:

ABC[单选题]*

A)scanf(“%c%c%c”,&ch1,&ch2,&ch3);

B)scanf(“%c,%c,%c”,&ch1,&ch2,&ch3);

C)scanf(“%c%c%c”,&ch1,&ch2,&ch3);(正确答案)

D)scanf(“%c%c”,&ch1,&ch2,&ch3);

55.阅读以下程序,当输入数据的形式为:

25,13,10(注:

表示回车),则正确的输出结果为()。

main()

{intx,y,z;

scanf(“%d%d%d”,&x,&y,&z);

printf(“x+y+z=%d\n”,x+y+z);

}[单选题]*

A)x+y+z=48

B)x+y+z=35

C)x+z=35

D)不确定值(正确答案)

56.已知ch是字符型变量,下面不正确的赋值语句是()。

[单选题]*

A)ch=‘a’+’b’;(正确答案)

B)ch=‘\0’;

C)ch=‘7’+‘9’;

D)ch=5+9;

57.以下关于结构化程序设计的叙述中正确的是()。

[单选题]*

A)一个结构化程序必须同时由顺序、分支、循环三种结构组成

B)结构化程序使用goto语句会很便捷

C)在C语言中,程序的模块化是利用函数实现的(正确答案)

D)由三种基本结构构成的程序只能解决小规模的问题

58.有以下程序

#include

main()

{inta1,a2;charc1,c2;

scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2);

printf(“%d,%c,%d,%c”,a1,c1,a2,c2);

}

若想通过键盘输入,使得a1的值为12,a2的值为34,c1的值为字符a,c2的值为字符b,程序输出结果是:

12,a,34,b则正确的输入格式是(). (以下_代表空格,代表回车)[单选题]*

A)12a34b(正确答案)

B)12_a_34_b

C)12,a,34,b

D)12_a34_b

59.逻辑运算符两侧运算对象的数据类型()。

[单选题]*

A)只能是0和1

B)只能是0或非0正数

C)只能是整型或字符型数据

D)可以是任何类型的数据(正确答案)

60.判断char型变量ch是否为大写字母的正确表达式是()。

[单选题]*

A)‘A’<=ch<=‘Z’

B)(ch>=‘A’)&(ch<=‘Z’)

C)(ch>=‘A’)&&(ch<=‘Z’)(正确答案)

D)(‘A’<=ch)AND(‘Z’>=ch)

61.若希望当A的值为奇数时,表达式的值为“真”,A的值为偶数时,表达式的值为“假”。

则以下不能满足要求的表达式是()。

[单选题]*

A)A%2==1

B)!

(A%2==0)

C)!

(A%2)(正确答案)

D)A%2

62.设有:

inta=1,b=2,c=3,d=4,m=2,n=2;

执行(m=a>b)&&(n=c>d)后n的值为()。

[单选题]*

A)1

B)2(正确答案)

C)3

D)4

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

main()

{inta,b,d=241;

a=d/100%9;

b=(-1)&&(-1);

printf(“%d,%d”,a,b);

}[单选题]*

A)6,1

B)2,1(正确答案)

C)6,0

D)2,0

64.已知intx=10,y=20,z=30;以下语句执行后x,y,z的值是()

if(x>y)z=x;x=y;y=z;[单选题]*

A)x=10,y=20,z=30

B)x=20,y=30,z=30(正确答案)

C)x=20,y=30,z=10

D)x=20,y=30,z=20

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

main()

{intm=5;

if(m++>5)

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

else;

printf(“%d\n”,m--);

}[单选题]*

A)4

B)5

C)6(正确答案)

D)7

66.if语句

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

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2