C语言程序设计习题集及答案Word文档格式.docx

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

C语言程序设计习题集及答案Word文档格式.docx

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

C语言程序设计习题集及答案Word文档格式.docx

%d,sizeof(a*b)+2/5);

13

14

设int型占2个字节,且inti=-2;

B-2

C65534

则语句printf("

%U,i);

的输出结果为一

D65535

若x、y、z均为整型常量,且a=100,

则执行下列语句后的z值为一

x=a++;

y=--a;

z=x+y-a--;

A100

B400

C200

D300

15

若有以下定义和语句:

intu=010,v=0x10,w=10,printf("

%d,%d,%d\n:

u,v,w);

,则输出结果是

16

A8,16,10

B10,10,10C8,8,10

D8,10,10

设x、y为int型变量,则执行下列语句后,

y的值是一

x=5;

y=x++*x++;

y=--y*--y;

A529

B2401

C1209

D625

17

假设在程序中a,b,c均被定义成整型,并且已赋大于1的值,则下列能正确表示代数式

1

abc

的表达式是

18

19

20

21

22

2

3

4

5

A1/a*b*cB1/(a*b*c)C1/a/b/(float)cD1.0/a/b/c

若有定义:

inta=8,b=5,c;

chard='

A'

;

则执行语句c=a/b+d%a+0.5;

后c的值为

A2B2.5

C3D类型不一致,无法计算,编译出错

在有以下程序:

main()

{inti=10,j=1;

i=i+j++;

%d,%d,%d\n'

i++,++j,i);

}

执行后输出结果是。

A12,3,11B12,2,11C11,3,11D12,3,12

已知inti=65;

,贝Uputchar(i);

%d,i);

%c,i);

的输出结果为。

AA,65,AB65,65,ACA,A,65DA,A,A

已知inty,a,i=1;

,则语句printf("

%d,%d,-i++,(y=a=3.6*3));

的输出结果为。

A-1,10B-2,1.8C0,3D1,18

有以下程序:

{chara,b,c,d;

a='

'

b='

\xbc'

c='

\0xab'

d='

\023'

%c%c%c%c\na,b,c,d);

编译时出现错误,以下叙述中正确的是

0bc'

语句不正确

和c='

\0xab'

语句都不正确

A程序中只有a='

语句不正确Bb=

Cd=\023'

语句不正确Da=

填空题(第1题2分,其余每题3分,共56分)

设x为int型变量,请写出描述“x是偶数”的表达式是。

已知scanf("

a=%d,b=%d,c=%d,&

a,&

b,&

c);

,若从键盘输入2、3、4三个数分别作为变量a、b、c的值则正确的输入形式是

设有语句inta=3;

,则执行了语句a+=a-=a*a后,变量a的值是。

以下程序的输岀结果是。

main()

{inta=-10,b=-3;

printf(

-a++);

-a+b);

以下程序的输岀结果是

{charc;

c=0362;

%d\n"

c);

6以下程序段(n所赋的是八进制数)执行后输出结果是。

intm=32767,n=032767;

printf("

%d,%o\n"

m,n);

7字符串"

\\name\\\101ddress\b\xaf"

的长度为:

8有以下程序段:

intm=0,n=0;

charc='

a'

scanf("

%d%c%(&

m,&

c,&

n);

%d,%c,%d\n'

m,c,n);

若从键盘上输入:

10A10<

回车>

则输岀结果是。

9以下程序的输岀结果是。

{printf("

%d,%o,%x\n:

10,10,10);

10,010,0x10);

%d,%x\n"

012,012);

10设a、b、c为整形变量,且a=2、b=3、c=4,则执行完语句a*=16+(b++)-(++c);

之后,变量a的值为

11以下程序的输岀结果为。

{intx=023;

%x\n"

--x);

12以下程序的结果为。

{inta=2,b=3,c,d;

c=(a++)+(a++)+(a++);

d=(++b)+(++b)+(++b);

a=%dc=%d\n"

a,c);

b=%dd=%d\n"

a,d);

13以下程序

{charch1,ch2,ch3;

%c%c%q&

ch1,&

ch2,&

ch3);

%c%c%c%c%ch1,'

#'

ch2,'

ch3);

当输入ABC时运行结果为【1】,当输入ABC时运行结果为【2】。

14若有定义:

floatx;

以下程序段的输出结果是。

x=5.16894;

%f\n"

(int)(x*1000+0.5)/(float)1000);

15以下程序的功能是:

输入一个小写字母,输岀对应的大写字母,将程序补充完整。

{charch;

【1】/*从键盘输入一个小写字母*/

【2】/*将该字母转换为大写字母*/

【3】/*输出转换后的结果*/

则程序的输出结果是

16当运行以下程序时,在键盘上从第一列开始输入9876543210/(此处/代表回车)

{inta;

floatb,c;

%2d%3f%4f,&

\na=%d,b=%f,c=%f\n"

a,b,c);

17以下程序的运行结果是。

%12.5f\n"

123.1234567);

%12f\n"

%12.8d\n"

12345);

%12.8s\n"

"

abcdefghij"

);

18运行以下程序时,如从键盘上输入abcdefg/,则输出结果是。

ch1=getchar();

ch2=getchar();

ch3=getchar();

putchar(ch1);

putchar(ch2);

putchar(ch3);

putchar('

\n);

19运行以下程序时,如从键盘上输入:

a=3,b=5/35,35.12/abc/后,结果是

{inta,b;

floatx,y;

charc1,c2;

a=%d,b=%d,&

b);

%f,%e"

&

x,&

y);

c1,&

c2);

a=%d,b=%d,x=%f,y=%f,c仁%。

22=%祇门"

a,b,x,y,c1,c2);

顺序、选择结构程序设计

一单项选择题(每题2分,共40分)

1以下程序运行后的输出结果是。

{inta=0,b=0;

a=10;

b=20;

a+b=%d\n"

a+b);

Aa+b=10Ba+b=30C30D出错

2以下程序运行后的输出结果是。

{doubled=3.2;

intx,y;

x=1.2;

y=(x+3.8)/5.0;

d*y);

A3B3.2C0D3.07

3以下程序运行后的输出结果是。

{doubled;

floatf;

longl;

inti;

i=f=l=d=20/3;

%d%ld%.1f%.1f\n"

i,l,f,d);

A666.06.0B666.76.7C666.06.7D666.76.0

4以下程序运行后的输出结果是。

{inta=1,b=2;

a=a+b;

b=a-b;

a=a-b;

%d,%d\n"

a,b);

A1,2B1,1C2,2D2,1

5以下程序运行后的输出结果是

{intx,y,z;

x=y=2;

z=3;

y=x++-1;

y=++x-1;

y=z---1;

y=--z-1;

A3143B3133

%d%d"

x,y);

%d%d\n"

z,x);

z,x);

C3143D2132

2414242224121312

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

x=y=1;

z=x++,y++,++y;

%d,%d,%d\n'

x,y,z);

A2,3,3B2,3,2C2,3,1D2,2,1

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

{intx=4,y=7;

x-=y;

y+=x;

x,y);

A47B-3-3C-311D-34

8以下程序运行后的输出结果是

{unsignedshorta=65536;

intb;

b=a);

A65536B0C1D-1

9以下程序:

#include<

stdio.h>

{charc1,c2,c3,c4,c5,c6;

%c%c%c%&

c2,&

c3,&

c4);

c5=getchar();

c6=getchar();

putchar(c1);

putchar(c2);

%c%c\n:

c5,c6);

程序运行后,若从键盘输入(从第1列开始)

123<

回车>

45678<

回车>

则输出结果是。

A1267B1256C1278D1245

10设a、b和c都是int型变量,且a=3,b=0,c=5,则以下值为0的表达式是•

&

&

b'

Ba&

b||cCa&

b&

cDa||b&

c

11在嵌套使用if语句时,C语言规定else总是。

A和之前与其具有相同缩进位置的if配对

B和之前与其最近的if配对

C和之前与其最近不带else的if配对

D和之前的第一个if配对

12若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为

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

{inta=2,b=-1,c=2;

if(a<

b)

if(b<

0)c=0;

elsec++;

A0B1C2D3

14若k是int型变量,下面的程序段的输出结果是

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

编译有错

无输出结果

{intx=1,y=0,a=0,b=0;

switch(x)

{case1:

switch(y)

{case0:

a++;

break;

case1:

b++;

case2:

a=%d,b=%d\n:

a,b);

Aa=2,b=1Ba=1,b=1Ca=1,b=0Da=2,b=2

二填空题(每题3分,共30分)

if(a=1)b=1;

c=2;

elsed=3;

%d,%d,%d,%d\n:

a,b,c,d);

A0,1,2,0B0,0,0,3C1,1,2,0D

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

{intx1=1,x2=0,x3=0;

if(x1=x2+x3)printf("

****"

elseprintf("

####"

A****B有语法错误C####D

17当a=1,b=3,c=5,d=4时,执行下面一行程序后,x的值是

b)if(c<

d)x=1;

elseif(a<

c)if(b<

d)x=2;

elsex=3;

elsex=6;

elsex=7;

A1B2C3D6

18下列叙述中正确的是。

Abreak语句只能用于switch语句

B在switch语句中必须使用default

Cbreak语句必须与switch语句中的case配对使用

D在switch语句中不一定使用break语句

{inti=010,j=10;

++i,j--);

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

%d%d%d\n\0'

\0'

'

\0);

}

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

{inti=5,j,k;

j=i+++i+++i++;

k=(++i)+(++i)+(++i);

i=%5dj=%5d\nk=%5d\n"

i,j,k);

4下面的程序运行时从键盘上输入9876543210<

,程序的输出结果是

%2d%2f%2f,&

a=%d,b=%.1f,c=%.0f"

5下面程序的输岀结果是。

{charch1,ch2;

ch仁A+'

5'

-3;

ch2='

+6'

%d,%c\n"

ch1,ch2);

6执行下面的语句:

(a=3*5,a*4,a+5));

,输出是。

{intx=10;

--x,--x);

8为表示关系x>

y>

乙应使用C语言表达式。

9下面的程序段的输岀结果是。

intx=3;

if((x%2)?

**%d"

x):

##%d\n"

x));

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

{intm=5;

switch(m/2)

m++;

m+=3;

case5:

m+=6;

default:

m-=7;

三程序填空(每空5分,共30分)

1下列程序的输出结果是16.00,请填空

{inta=9,b=2;

floatx=【1】,y=1.1,z;

z=a/2+b*x/y+1/2;

%5.2f\n"

z);

a,b,c的值,判断a,b,c能否组成三角形,计算三角形面积

【2】;

{inta,b,c;

【3】

pleaseinputthevalueofa,b,c"

%d%d%d,【4】);

if(【5】)

{【6】

s=sqrt(p*(p-a)*(p-b)*(p-c));

Yes,thisisatriangle!

\ntheareais%.2f.\n"

s);

No,thisisnotatriangle!

\n"

循环结构程序设计

一单项选择题(每题2分,共40分)

1以下程序中,while循环的循环次数是。

{inti=0;

while(i<

10)

{if(i<

1)continue;

if(i==5)break;

i++;

A1B10C6D死循环

2以下程序的执行结果是。

{intn=9;

%d,n);

while(n>

6){n--;

该程序的输岀结果是

A987

B876

C8765

D9876

以下程序段,while循环执行的次数是一

intk=0;

while(k=1)k++;

以下叙述正确的是一

Ado-while语句构成的循环不能用其它语句构成的循环来代替

以下程序的执行结果是

{inta,y;

y=0;

do{a+=2;

y+=a;

if(y>

20)break;

}while(a=14);

a=14y=26a=14y=44

{intx=23;

do{printf("

%d,x--);

}while(!

x);

A321

B23

不输出任何内容D陷入死循环

有以下程序段,

输出结果是

do{printf(

%d"

x-=2);

(--x));

C1-2

死循环

以下程序的输岀结果是

{inta=0,i;

for(i=1;

i<

5;

i++){switch(i)

case3:

a+=2;

%d\n"

i);

死循环D0

case2:

a+=3;

default:

a+=5;

a);

A31B13C10D20

9以下程序的输出结果是。

{inti=O,a=O;

20)

{for(;

if((i%10)==0)break;

elsei--;

i+=11;

a+=i;

A21B32C33D11

10以下循环体的执行次数是。

{inti,j;

for(i=0,j=1;

=j+1;

i+=2,j--)printf(

A3B2C1D0

11下列程序的输岀结果是。

{inti,j,m=0,n=0;

for(i=0;

<

2;

i++)

for(j=0;

j<

j++)

if(j>

=i)m=1;

n++;

n);

A4B2C1D0

12下列程序的输出结果是。

{inti,sum;

=3;

sum++)sum+=i;

printf("

sum);

A6B3C

13以下程序执行后sum的值是。

6;

i++)sum+=i;

A15B14C不确定D0

14以下程序执行后的输出结果是。

{inti,n=0;

for(i=2;

{do{if(i%3)continue;

n++;

}while(!

i);

n=%d\n"

An=5Bn=2Cn=3Dn=4

15下列语句中,能正确输出26个英文字母的是。

%c,a);

%c,a));

Afor(a='

a<

='

z:

%C:

++a));

Bfor(a='

=Z'

)printf(

Cfor(a='

z'

a++));

Dfor(a='

printf(

16以下程序执行后的输岀结果是。

{intx=1,y=1;

while(y<

=5)

{if(x>

=10)break;

if(x%2==0)

{x+=5;

continue;

x-=3;

y++;

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

当前位置:首页 > 工程科技 > 能源化工

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

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