《C语言程序设计》综合练习题与答案Word格式文档下载.docx

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

《C语言程序设计》综合练习题与答案Word格式文档下载.docx

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

《C语言程序设计》综合练习题与答案Word格式文档下载.docx

a++)

for(b=0;

b<

=3;

b++)

c=c+1;

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

(2)inti=1;

do{

if(i%10){

i=i+1;

continue;

}

printf(“%5d”,i);

i++;

}While(i<

=50);

(3)intx=2;

there:

x=x+1;

if(x<

6)gotothere;

printf("

x=%d"

x);

Endofprogram."

);

(4)intx=1,y=1;

while(y<

6)

{

x=x*y;

y=y+1;

}

x=%d\n"

(5)inti,j,x[2][2];

for(i=0;

i<

2;

i++){

for(j=0;

j<

j++){

x[i][j]=i十j;

printf("

x[%d][%d]=%d"

i,j,x[i][j]);

printf("

\n"

(6)inta[5]={5,4,3,2,1},i=0,x=0;

whi1e(i<

5)

x=a[i]十x;

x=%d\n"

(7)main()

intx=10,y=20;

result=%d\n"

abc(x,y));

return0;

abc(inta,intb)

intc;

if(b)

{c=a/b+a;

returnc;

}

e1se

(8)main()

intx=10;

inti;

for(i=0;

i++)

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

fun(intx)

staticintZ=3;

Z=Z+x;

returnZ;

(9)main()

inta,b;

a=50;

b=90;

%d\n"

(a,b));

(10)main()

inta[10]={19,23,44,17,37,28,49,36},*P;

P=a;

%d\n"

(P+=3)[3]);

return0;

(11)main()

inti=3,j=2;

char*a="

DCBA"

;

%c%c\n"

a[i],a[j])"

(12)#include<

stdio.h>

fun(intx)

intk;

if(x==0||x==1)return(3);

k=x-fun(x-2);

returnk;

main()

fun(9));

(13)#include<

iostream.h>

voidmyFunc();

voidrnain()

intX=5;

cout<

<

"

\nInmainXis:

"

X;

myFunc();

\nBackinmain,Xis:

voidmyFunc()

intX=8;

\nInmyFunc,localX:

{

cout<

\nInblockinmyFunc,Xis:

intX=9;

\nVerylocal,X:

”<

X;

\nOutofblock,inmyFunc,Xis:

(14)#include<

f(inta[])

inti=0;

while(a[i]<

=10)

printf("

%d"

a[i]);

i++;

main()

inta[]={1,5,10,9,11,7};

f(a+1);

(15)#include<

swap(int*p1,int*p2)

intp;

p=*p1;

*p1=*p2;

*p2=p;

inta=5,b=7,*ptr1,*ptr2;

prt1=&

a;

ptr2=&

b;

swap(ptr1,ptr2)

*ptr1=%d,*ptr2=%d\n"

*ptr1,*ptr2);

a,b);

(16)#include<

voidmain(void)

intx,y=-2,z=0;

if((z=y)<

0)x=4;

elseif(y==0)x=5;

elsex=6;

\t%d\t%d\n"

x,z);

if(z=(y==0))

x=5;

x=4;

if(x=z=y)x=4;

(17)#include<

intfac(intn)

staticintf=1;

f=f*n;

return(f);

inti;

for(i=1;

=5;

%d!

=%d\n"

i,fac(i));

return;

(18)#include<

intf=1;

三、单项选择题

1.一个C程序的执行是从_______。

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

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

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

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

2.一个C语言程序是由__________。

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

(B)函数组成

(C)若干个过程组成

(D)若干个子程序组成

3.下面选项中,均是不合法的用户标示法的选项是________。

(A)AP_0do

(B)floatla0_A

(C)b-agotoint

(D)_123tempINT

4.以下叙述正确的是_________。

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

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

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

(D)在C程序中,%是只能用于整数运算的运算符

5.以下C程序的正确的运行结果是___________。

(注:

表示空格)

main()

{

longy=-43456;

printf("

y=%-8ld\n"

y);

y=%-08ld\n"

y=%08ld\n"

y=%+8ld\n"

(A)y=

-43456(B)y=-43456

y=-

43456y=-43456

y=-0043456y=-0043456

y=-43456y=+

-43456

(C)y=-43456(D)y=

y=-43456y=-0043456

y=-0043456y=00043456

y=

-43456y=+43456

6.设x,y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是___。

(A)'

x'

&

'

y'

(B)x<

=y

(C)x||y+z&

y-z(D)!

((x<

y)&

!

z||1)

7.以下运算符中优先级最低的是_______。

(A),(B)&

(C)+(D)!

=

8.以下if语句语法正确的是_______。

(A)if(x>

0)

printf("

%f"

x)

elseprintf("

-x);

(B)if(x>

{x=x+y;

x);

}

(C)if(x>

};

(D)if(x>

x)};

9.以下程序段_____________。

x=-1;

do

{x=x*x;

while(!

x);

(A)是死循环

(B)循环执行二次

(C)循环执行一次

(D)有语法错误

10.执行语句for(i=1;

i++<

4;

);

变量的值是________。

(A)3(B)4(C)5(D)不确定

11.对以下说明语句的正确理解是_________。

inta[10]={6,7,8,9,10};

(A)将5个初值一次赋给a[1]至a[5]

(B)将5个初值一次赋给a[0]至a[4]

(C)将5个初值一次赋给a[6]至a[10]

(D)因为数组长度与初值的个数不相同,所以语句不正确

12.下面程序段的运行结果是____________。

chara[]={'

a'

'

b'

\0'

c'

%s"

c);

(B)ab(C)ab

c(D)abc

13.在C语言中,以下正确的说法是______

(A)实参和与其对应的形参各占独立的存储单元

(B)实参和与其对应的形参占用同一个存储单元

(C)只有当实参和与其对应的形参同名时才占用同一个存储单元

(D)形参是虚拟的,不占用存储单元

14.用数组名作为函数调用的实参,传递给形参的是_____。

(A)数组的首地址

(B)数组第一个元素的值

(C)数组中全部元素的值

(D)数组元素的个数

15.凡是函数中未指定存储类别的局部变量,其隐含的存储类别为____。

(A)自动(auto)(B)静态(static)

(C)外部(extern)(D)寄存器(register)

16.以下叙述中正确的是_________。

(A)在程序的一行上可以出现多个有效的预处理命令行

(B)使用带参的宏时,参数的类型应与宏定义时一致

(C)宏替换不占用运行时间,只占编译时间

(D)以下定义中CR是称为“宏名”的标示符

#defineCR045

17.若有以下宏定义:

#defineN2

#definY(n)((N+1)*N)

则执行语句z=2*(N+Y(5));

后的结果是_________。

(A)语句有错误(B)z=34

(C)z=70(D)z无定值

18.下面程序应能对两个整型变量的值进行交换。

以下正确的说法是______。

main()

{

inta=10,b=20;

(1)a=%d,b=%d\n"

swap(&

a,&

b);

(2)a=%d,b=%d\n"

swap(intp,intq)

intt;

t=p;

p=q;

q=t;

(A)该程序完全正确

(B)该程序有错,只要将语句swap(&

中的参数该为a,b即可

(C)该程序有错,只要将swap()函数中的形参p和q以及t均定义为指针(执行语句不变)即可

(D)以上说法都不正确

19.若有定义inta=5;

下面对

(1)和

(2)两个语句的正确解释是____。

(1)int*p=&

(2)*p=a;

(A)语句

(1)和

(2)中的*p含义相同,都表示给指针变量p赋值。

(B)

(1)和

(2)语句的执行结果,都是把变量a的地址值赋给指针变量p

(C)语句

(1)在对p进行说明的同时进行初始化,使p指向a

语句

(2)将变量a的值赋给指针变量p

(D)语句

(1)在对p进行说明的同时进行初始化,使p指向a

语句

(2)将变量a的值赋给*p

20.若已定义chars[10];

则在下面表达式中不表示s[1]的地址的是___。

(A)s+1(B)s++(C)&

s[0]+1(D)&

s[1]

21.编译执行下列程序,结果是:

____________。

#inclucle<

stdiO.h>

inti=6;

y=4;

z=2;

i/y%z);

return0;

(A)显示出错信息,不能执行。

(B)0(C)1(D)2

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

______。

#inclucle<

intx=10,y=10;

%d%d\n"

x--,--y);

retum0;

(A)1010(B)99

(C)910(D)109

23.以下程序的输出结果为:

stdi0.h>

intx=023;

--x);

return0;

(A)18(B)22

(C)23(D)19

24.不能进行++和--运算的数据类型是:

(A)指针(B)double

(C)int(D)long

25.下列字符序列中,不可用作C语言标识符的是:

______

(A)$4568:

’(B)sum

(C)STUD_name(D)basic_12

26.设X的值为3,则表达式(X++)+(X++)+(X++)的值是______。

(A)10(B)6

(C)12(D)9

27.设a=12,b=12345,执行语句printf("

%4d,%4d"

a,b)的输出结果为:

(A)12,123(B)12,12345

(C)12,1234(D)12,123456

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

inti=1,sum=0;

while(i<

10)

sum=sum+1;

i++;

i=%d,sum=%d"

i,sum);

(A)i=10,sum=9(B)i=9,sum=9

(C)i=2,sum=1(D)运行出现错误

29.以下程序的的输出结果为:

inta,b,c,x,y,z;

a=10;

b=2;

c=!

(a%b);

x=!

(a/b);

y=(a<

b)&

(b>

=0);

z=(a<

b)||(b>

c=%d,x=%d,y=%d,z=%d\n"

c,x,y,z);

(A)c=0,x=1,y=l,z=0(B)c=5,x=0,y=l,z=0

(C)c=1,x=0,y=0,z=1(D)c=10,x=2,y=0,z=1

30.执行下列程序段后,xy的值是:

int*pt,xy;

xy=270;

pt=&

xy;

xy=*pt+30;

(A)270(B)240

(C)330(D)300

31.用scanf("

%d,%d,&

b)输人数据时,下面输入法正确的是:

________

(A)123,4(B)1234

(C)123;

4(D)123:

4

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

_______。

point(char*pt);

charb[4]={'

s'

f'

},*pt=b;

point(pt);

%c\n"

*pt);

return0;

point(char*P)

P+=3;

(A)s(B)c

(C)f(D)a

33.标有/**/的语句的执行次数是:

________。

inty,i;

for(i=0;

20;

if(i%2==0)

continue;

y=y+i;

/**/

(A)20(B)19

(C)10(D)9

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

_________。

sub(x,y,z)

intx,y,*z;

*z=y-x;

}

inta,b,c;

sub(10,5,&

a);

sub(7,a,&

sub(a,b,&

c);

%d,%d,%d\n"

a,b,c);

(A)-5,-12,-17(B)-5,-3,-2

(C)-5,-12,-7(D)-5,-2,-7

35.以下程序的输出结果为:

charcl='

c2='

c3='

a%cb%c\tc%c\n"

c1,c2,c3);

(A)abcabcabc(B)aabbcc

(C)abc(D)aaaabb

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

y?

++x:

++y的值是:

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

(A)2(B)3

(C)6(D)5

37.在下列各m的值中,能使m%3==2&&m%5==3&

m%7==2为真的是:

_____

(A)8(B)23

(C)17(D)6

38.下列语句执行后的结果是:

y=5;

P=&y;

x=*P++;

(A)x=5,y=5(B)x=5,y=6

(C)x=6,y=5(D)x=6,y=6

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

inta[]={1,3,5,7};

{

intn;

int*P=a;

for

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

当前位置:首页 > 医药卫生 > 药学

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

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