c语言程序设计期末综合练习题Word文档格式.docx

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

c语言程序设计期末综合练习题Word文档格式.docx

《c语言程序设计期末综合练习题Word文档格式.docx》由会员分享,可在线阅读,更多相关《c语言程序设计期末综合练习题Word文档格式.docx(28页珍藏版)》请在冰点文库上搜索。

c语言程序设计期末综合练习题Word文档格式.docx

x);

y=x>

12?

x+10:

x-12;

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

}

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

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

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

A)A%2==1B)!

(A%2==0)C)!

(A%2)D)A%2

13、设有:

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

执行(m=a>

b)&

&

(n=c>

d)后n的值为。

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

14、以下程序的运行结果是。

{inta,b,d=241;

a=d/100%9;

b=(-1)&

(-1);

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

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

15、已知intx=10,y=20,z=30;

以下语句执行后x,y,z的值是。

if(x>

y)z=x;

x=y;

y=z;

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

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

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

{intm=5;

if(m++>

5)

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

else;

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

A)4B)5C)6D)7

17、判断char型变量ch是否为大写字母的正确表达式是。

A)‘A’<

=ch<

=‘Z’B)(ch>

=‘A’)&

(ch<

=‘Z’)

C)(ch>

=‘Z’)D)(‘A’<

=ch)AND(‘Z’>

=ch)

18、逻辑运算符两侧运算对象的数据类型。

A)只能是0和1B)只能是0或非0正数

C)只能是整型或字符型数据D)可以是任何类型的数据

二、单选题

1、若有定义:

inta=8,b=5,c;

执行语句c=a/b+0.4 

后,c的值为()。

A)1.4B)1C)2.0D)2

、以下程序中,while循环的次数是()。

#include<

stdio.h>

voidmain(void)

{inti=0;

while(i<

10){

if(i<

1)continue;

if(i==5)break;

i++;

}

A)1B)死循环,不能确定次数C)6D)10

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

{inta=0,i;

for(i=1;

i<

5;

i++)v{

switch(i){

case0:

case3:

a+=2;

case1:

case2:

a+=3;

default:

a+=5;

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

A)31B)13C)10D)20

4、执行以下程序段后的输出结果是()。

intx=5;

intm,n;

n=(++x)+(++x);

m=(x--)+(x--);

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

A)1410B)1313C)1414D)1412

5、执行以下程序后的输出结果是()

{

inti=0,j=0,a=6;

if((++i>

0)||(++j>

0))a++;

printf(“i=%d,j=%d,a=%d\n”,i,j,a);

A)i=0,j=0,a=6B)i=1,j=1,a=7C)i=1,j=0,a=7D)i=0,j=1,a=7

6、执行以下程序后的输出结果是()

chara[]=”abc\0abc”;

printf(“%s”,a);

A)abc\0abcB)abc\C)abc\0D)abc

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

inta=1,b=2,c=3;

printf(“%d”,c>

b>

a);

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

8、执行以下程序后,a的值为()。

int*p,a=10,b=1;

p=&

a;

a=*p+b;

A)12B)编译出错C)10D)11

9、以下正确的叙述是()。

A)在C语言中,main函数必须位于文件的开头

B)C语言每行中只能写一条语句

C)C语言本身没有输入、输出语句

D)对一个C语言进行编译预处理时,可检查宏定义的语法错误

10、以下各语句或语句组中,正确的操作是()。

A)chars[5]="

abcde"

B)char*s;

gets(s);

C)char*s;

s="

;

D)chars[5];

scanf("

%s"

&

s);

11、设有以下说明语句,则下面的叙述中不正确的是()。

structex{

intx;

charz;

}example;

A)struct结构体类型的关键字B)example是结构体类型名

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

12、对以下程序段,while循环执行的次数是()。

intk=0

while(k=1)k++;

A)无限次B)有语法错,不能执行C)一次也不执行D)执行1次

13、若已定义:

inta[9],*p=a;

并在以后的语句中未改变p的值,则不能表示a[1]地址的表达式是()。

A)p+1B)a+1C)a++D)++p

14、函数调用:

strcat(strcpy(str1,str2),str3)的功能是()。

A)将串str1复制到串str2中后再连接到串str3之后

B)将串str1连接到串str2之后再复制到串str3之后

C)将串str2复制到串str1中后再将串str3连接到串str1之后

D)将串str2连接到串str1之后再将串str1复制到串str3中

15、在下列选项中,不正确的赋值语句是()。

A)++t;

B)n1=(n2=(n3=0));

C)k=i==j;

D)a=b+c=1;

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

{inta=5,b=4,c=6,d;

printf(“%d\n”,d=a>

b?

(a>

c?

a:

c):

b);

A)5B)4C)6D)不确定

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

{inta=4,b=5,c=0,d;

d=!

a&

!

b||!

c;

A)1B)0C)非0的数D)–1

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

intf(void)

{staticinti=0;

ints=1;

s+=i;

return(s);

inti,a=0;

for(i=0;

i++)a+=f()

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

19、执行以下程序段后的输出结果是()。

intx=2,y=3,z;

z=(x++,y++);

printf(“%d”,z);

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

20、执行以下程序后的输出结果是()。

inti=010,j=10,a=0x10;

printf(“%d,%d,%d\n”,i,j,a);

A)8,10,16B)8,10,10C)10,10,10D)10,10,16

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

inta=7,floatx=2.5;

y=4.7;

printf(“%g”,x+a%3*(int)(x+y)%2/4);

A)0B)2.75C)2D)2.5

22、下列语句行中,哪些语句能正确进行字符小、串赋值操作()。

A)charst[4][5]B)chars[5]={‘A’,‘B’,‘C’,‘D’,’E’}C)char*s;

s=“ABCDE”;

D)char*s;

scanf(“%s”,s);

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

chara[]={9,8,7,6,5,4,3,2,1,0},*p=a+5;

printf(“%d”,*--p);

A)非法B)a[4]的地址C)3D)5

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

#include<

voidmain(void)

{

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

int*p[4],j;

for(j=0;

j<

4;

j++)p[j]=a[j];

printf("

%2d,%2d,%2d,%2d\n"

*p[1],(*p)[1],p[3][2],*(p[3]+1));

A)4,4,9,8B)程序出错C)4,2,12,11D)1,1,7,5

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

A)当用数组名作形参时,形参数组改变可使实参数组随之改变

B)允许函数递归调用

C)函数形参的作用范围只是局限于所定义的函数内

D)函数说明必须在主调函数之前

26、以下所列的各函数首部中,正确的是()。

A)voidplay(var:

Integer,varb:

Integer)B)voidplay(inta,b)

C)voidplay(inta,intb)D)Subplay(aasinteger,basinteger)

27、以下程序执行后sum的值是()

{

inti,sum;

i<

6;

i++)sum+=i;

printf("

%d\n"

sum);

A)15B)14C)不确定D)0

28、以下叙述中不正确的是()。

A)在C中,函数中的自动变量可以赋初值,每调用一次,赋一次初值。

B)在C中,在调用函数时,实在参数和对应形参在类型上只需赋值兼容。

C)在C中,外部变量的隐含类别是自动存储类别。

D)在C中,函数形参可以说明为register变量。

29、在C语言中,合法的字符常量是()。

A)'

\084'

B)'

\x43'

C)'

ab'

D)"

\0"

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

func((exp1,exp2),(exp3,exp4,exp5));

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

31、若变量a是int类型,并执行了语句a=‘A’+1.6;

后,则正确的叙述是()。

A)a的值是字符’C’B)a的值是浮点型C)a的值是字符’A’的ASCII值加1

D)不允许字符型和浮点型相加

32、执行以下程序段后,变量y的值是()。

intx,y;

x=1;

y=(++x*5);

A)5B)10C)15D)20

33、9、执行以下程序段后的输出结果是()

inta=10;

printf(“%d”,++x);

printf(“%d”,x--)

A)1110B)1111C)1011D)1010

34、执行以下程序后的输出结果是()

intx=10;

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

A)1110-10B)1010-10C)1011-11D)1111-10

35、下面正确的自定义标识符是()

A)a2b3B)intC)intabcD)2a3b

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

inta=12,n=5;

printf(“%d”,a%2=(n%2));

A)01B)1C)0D)0x1

37、若有下列说明和语句:

inta[4][5],(*p)[5];

p=a;

则对a数组元素的正确引用是()。

A)p+1B)*(p+3)C)*(p+1)+3D)*(*p+2)

38、执行printf("

strlen("

a\n\"

\x41"

))语句,其输出结果是()。

A)8B)7C)6D)4

39、若定义a[][2]={1,2,3,4,5,6,7};

则a数组中行的大小是()。

A)2B)3C)4D)无确定值

40、若fp为文件指针,且文件已正确打开,i为long型变量,以下程序段的输出结果是

()。

fseek(fp,0,SEEK_END)

i=ftell(fp);

i=%ld\n"

i);

A)-1B)fp所指文件的长度,以字节为单位

C)0D)2

41、当调用函数时,实参是一个数组名,则向函数传送的是()。

A)数组的长度B)数组的首地址

C)数组每一个元素的地址D)数组每个元素中的值

42、若变量c为char类型,则能正确判断出c为小写字母的表达式是()。

a'

<

=c<

='

z'

B)(c>

)||(c<

C)('

=c)and('

>

=c)D)(c>

)&

(c<

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

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

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

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

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

44、若有以下定义和语句,则则输出结果是()

int**pp,*p,a=10,b=20;

pp=&

p;

p=&

b;

*p,**pp);

A)10,20B)10,10C)20,10D)20,20

45、设有语句chara='

\72'

则变量a包含的字符个数是()。

A)1B)2C)3D)说明不合法

三、填空题

1、scanf函数的格式化字符串中,格式说明与输出项的个数必须相同。

如果格式说明的个数小于输出项的个数,则多余的输出项_______。

如果格式说明的个数多于输出项的个数,则多余多余的格式将输出______。

2、以下程序的运行结果是_______。

voidmain()

{inti=5,j=9;

floatx=2.3,y=45.;

printf(“%8.2f\n”,i%(int)(x+y)*j/2/3+y);

3.若有定义:

charc=‘\010’;

则变量c中包含的字符个数为______。

4、若x和n均是int型变量,且x和n的初值均为5,则计算表达式后x的值为______,n的值为______。

x+=n++

5.若a是int型变量,则计算下面表达式后a的值为______。

A=25/3%3

6、若x和a均是int型变量,则计算表达式

(1)后的x值为______,计算表达式

(2)后的x值为______。

(1)x=(a=4,6*2)

(2)x=a=4,6*2

7.若a是int型变量,则下面表达式的值为______。

(a=4*5,a*2),a+6

8、若s是int型变量,且s=6,则下面表达式的值为______。

s%2+(s+1)%2

9.在C语言中,一个int型数据在内存中占2个字节,则int型数据的取值范围为______。

10、若有以下定义,则计算表达式y+=y-=m*=y后的y值是______。

intm=5,y=2;

11、设有定义语句:

inti=3;

floatf=456.789;

则表达式1.2+i+’A’+f值的数据类型是______。

三、程序填空(26分)

1、求1!

+2!

+3!

+。

+10!

floats=0,t=1;

intn;

for(n=1;

;

n++){

;

printf(“1!

=%f”,s);

2、以下程序是用来统计从键盘输入的一个正整数中各位数字中零的个数,并求各位数字中最大者。

例如:

1080其零的个数是2,各位数字中最大者是8。

unsignedlongnum,max,t;

intcount;

count=max=0;

%ld"

num);

do{

t=;

if(t==0)++count;

else

if(max<

t);

num/=10;

}while(num);

count=%d,max=%ld\n"

count,max);

3、下面程序的功能是:

输出100以内能被3整除且个位数为6的所有整数。

inti,j;

for(i=0;

[13];

i++){

j=i*10+6;

if()continue;

%d"

j);

 

4、以下函数的功能是,把两个整数指针所指的存储单元中的内容进行交换。

voidexchange(int*x,int*y)

intt;

t=*y;

*y=;

*x=;

5、定义compare(char*s1,char*s2)函数,以实现比较两个字符串大小的功能。

voidcompare(char*s1,char*s2)

while(*s1&

*s2&

){

s1++;

return;

compare("

abCd"

"

abc"

);

6、函数fun的功能是:

使字符串str按逆序存放。

voidfun(charstr[])

charm;

inti,j;

for(i=0,j=strlen(str);

;

i++,j--){

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

当前位置:首页 > 总结汇报 > 学习总结

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

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