带答案C语言210章作业.docx

上传人:b****7 文档编号:24935332 上传时间:2023-06-03 格式:DOCX 页数:58 大小:47.78KB
下载 相关 举报
带答案C语言210章作业.docx_第1页
第1页 / 共58页
带答案C语言210章作业.docx_第2页
第2页 / 共58页
带答案C语言210章作业.docx_第3页
第3页 / 共58页
带答案C语言210章作业.docx_第4页
第4页 / 共58页
带答案C语言210章作业.docx_第5页
第5页 / 共58页
点击查看更多>>
下载资源
资源描述

带答案C语言210章作业.docx

《带答案C语言210章作业.docx》由会员分享,可在线阅读,更多相关《带答案C语言210章作业.docx(58页珍藏版)》请在冰豆网上搜索。

带答案C语言210章作业.docx

带答案C语言210章作业

C语言习题集

专业班级

学号

姓名

第2章运算符与表达式

一、选择题

1.若有定义:

inta=2,b=3;floatx=,y=;则下面表达式的值为(C)。

(float)(a+b)/2+(int)x%(int)y

A)B)35C)D)

2.若有定义:

intx=3,y=2;floata=,b=;则下面表达式的值为(B)。

(x+y)%2+(int)a/(int)b

A)B)1C)D)2

3.若x和n均是int型变量,且x的初值为12,n的初值为5,则执行下面表达式后x的值为(A)。

x%=(n%=2)

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

4.设有intx=11;则表达式(x++*1/3)的值是(A)。

A)3B)4C)11D)12

5.下列程序的输出结果是(C)。

#include<>

main()

{doubled=;intx,y;

x=;y=(x+/;

printf("%d\n",d*y);}

A)3B)3.2C)0D)

6.下列程序执行后的输出结果是(小数点后只写一位)(A)。

#include<>

main()

{doubled;floatf;longl;inti;

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

printf("%d%ld%f%f\n",i,l,f,d);

}

A)66B)66

C)66D)66

7.若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是(C)。

A)1B)2C)D)

8.若变量a,i已正确定义,且i已正确赋值,则合法的语句是(B)。

A)i=int(a)B)++i;C)a=a++=5;D)a=int(i);

9.若执行以下程序段后,c3的值为(A)。

intc1=1,c2=2,c3;

c3=c2*c1;

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

10.如下程序的运行结果是(D)。

#include<>

main()

{inty=3,x=3,z=1;

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

}

A)34B)42C)43D)33

11.能正确表示逻辑关系:

“a≥10或a≤0”的C语言表达式是(D)。

A)a>=10ora<=0B)a>=0|a<=10C)a>=10&&a<=0D)a>=10||a<=0

12.设x,y,t均为int型变量,则执行语句:

x=y=3;t=++x||++y;后,y的值为(C)。

A)不定值B)4C)3D)1

13.以下程序的输出结果是(D)。

#include<>

main()

{inta=3;

printf("%d\n",(a+=a-=a*a));

}

A)-6B)12C)0D)-12

14.设a,b,c,d,m,n均为int型变量,且a=5,b=6,c=7,d=8,m=2,n=2,则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值为(C)。

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

15.在C语言中,如果下面的变量都是int类型,则输出的结果是(A)。

sum=pad=5;pad=sum++,pad++,++pad;

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

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

二、填空题

1.若a,b和c均是int型变量,则执行表达式a=(b=4)+(c=2)后,a值为__6____,b值为__4____,c值为__2____。

2.若a是int型变量,且a的初值为6,则执行表达式a+=a-=a*a后a的值为___-60___。

3.若a是int型变量,则执行表达式a=25/3%3后a的值为___2___。

4.若x和n均是int型变量,且x和n的初值均为5,则执行表达式x+=n++后x的值为__10____,n的值为___6___。

5.表达式8/4*(int)(int)*+)值的数据类型为__int型___。

6.若a是int型变量,则表达式(a=4*5,a*2),a+6的值为__26____。

7.若x和a均是int型变量,则执行表达式x=(a=4,6*2)后x的值为__12__,执行表达式(x=a=4,6*2)后x的值为__4___。

8.若有以下定义intm=5,y=2;,则执行表达式y+=y-=m*=y后y的值是__-16____。

9.已知inty;floatx=-3;,执行语句y=x%2;后,变量y的值为__语句本身是错误的_错误的赋值__。

10.若intw=1,x=2,y=3,z=4;则条件表达式w>xw:

y

z的结果为__3____。

11.以下程序的输出结果是__109____。

#include<>

main()

{intx=10,y=10;

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

}

12.表达式*(1/2)的值为。

第3章基本语句

一、选择题

1.下面程序的输出结果是(B)。

#include<>

main()

{intx=5,y=3;

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

}

A)0B)1C)3D)不确定的值

2.若变量已正确定义,下面程序段的输出结果是(A)。

x=;printf("%f\n",(int)(x*1000+05)/(float)1000);

A)B)输出格式说明与输出项不匹配,输出无定值C)D)

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

#include<>

main()

{inta=4;floatb=9;

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

}

A)a=4,b=B)a=%4,b=%9.000000C)a=%%d,b=%%fD)a=%d,b=%f

4.下面语句:

printf("|%8.5f|\n",;的输出结果是(C)。

A)||B)||C)||D)||

5.(D)是不正确的C语言赋值语句。

A)x=1,y=2;B)x++;C)x=y=5;D)y=int(x);

6.与数学公式|cos(x)|等价的C语言表达式是(D),假定其中的x的单位是度数且不考虑π值的精度。

A)sqrt(cos(x))B)sqrt(abs(cos(x*180)))

C)sqrt(abs(cos(x*(/180)))D)sqrt(fabs(cos(x*180)))

7.下面的程序(D)。

#include<>

main()

{intx=3,y=0,z=0;

if(x=y+z)printf("****");

elseprintf("####");

}

A)有语法错误不能通过编译B)输出****

C)可以通过编译,但是不能通过连接,因而不能运行D)输出####

8.执行下面程序中的输出语句后,a的值是(C)。

#include<>

main()

{inta;

printf("%d\n",(a=3*5,a*4,a+5));

}

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

9.若执行下面的程序时,从键盘上输入3和4,则输出结果是(B)。

#include<>

main()

{inta,b,s;

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

s=a

if(a

s=s*s;

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

}

A)14B)16C)18D)20

10.以下程序不用第三个变量,实现将两个数进行对调的操作。

请填空(B)。

#include<>

main()

{

inta,b;

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

printf("a=%db=%d",a,b);

a=a+b;b=a-b;a=;

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

}

A)a+bB)a-bC)b*aD)a/b

11.执行下列程序的结果是(B)。

#include<>

main()

{floatx=3,y;

y=++x*x++;

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

}

A)B)16.000000C)D)程序有错误

12.执行下列程序时输入1234567,程序的运行结果为(B)。

#include<>

main()

{intx,y;

scanf("%2d%2ld",&x,&y);printf("%d\n",x+y);

}

A)17B)46C)15D)9

13.下述程序的输出结果是(A)。

#include<>

main()

{printf("%f",+1*7%2/4);

}

A)B)2.750000C)D)

14.下属程序的输出结果是(D)。

#include<>

main()

{floata;a=1/0;

printf("%g",a);

}

A)+00B)0.0C)D)0

15.设x,y和z均为int型变量,则执行语句x=(y=(z=10)+5)-5;后,x,y和z的值是(A)。

A)x=10,y=15,z=10B)x=10,y=10,z=10

C)x=10,y=10,z=15D)x=10,y=5,z=10

二、填空题

1.下面程序的输出是__-200,25i=-200,j=25____。

i=-200

j=25

#include<>

main()

{inti=-200,j=25;

printf("%d,%d",i,j);

printf("i=%d,j=%d\n",i,j);

printf("i=%d\nj=%d\n",i,j);

}

2.以下程序的输出结果是__156,156,234,9c,156____。

#include<>

main()

{inta=0234;

printf("%3d,%6d,%6o,%6x,%6u\n",a,a,a,a,a);

}

3.以下程序的输出结果是,,。

#include<>

voidmain()

{doublea=;

printf("%8.6f,%8.3f,%14.8f\n",a,a,a);

}

4.已有定义intd=-2;执行以下语句后的输出结果是______。

printf("*d

(1)=%d*d

(2)=%3d*d(3)=%-3d*\n",d,d,d);

printf("*d(4)=%x*d(5)=%6x*d(6)=%-6x*\n",d,d,d);

5.执行以下程序时,若从第一列开始输入数据,为使变量a=3,b=7,x=,y=,c1=′A′,c2=′a′,正确的数据输入形式是_a=3b=7x=y=7.182c1=ac2=a_____。

#include<>

main()

{inta,b;floatx,y;charc1,c2;

scanf("a=%db=%d",&a,&b);scanf("x=%fy=%f",&x,&y);

scanf("c1=%cc2=%c",&c1,&c2);

printf("a=%d,b=%d,x=%f,y=%f,c1=%c,c2=%c",a,b,x,y,c1,c2);

}

第4章选择结构

一、选择题

1.下列程序的运行结果是(B)。

#include<>

main()

{inta=2,c=5;

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

}

A)a=%2,b=%5

B)a=2,b=5

C)a=d,b=d

D)a=%d,b=%d

2.若有定义:

floatw;inta,b;则合法的switch语句是(D)。

A)switch(w)

{case:

printf("*\n");

case:

printf("**\n");

}

B)switch(a);

{case1printf("*\n");

case2printf("**\n");

}

C)switch(w)

{case1:

printf("*\n");

default:

printf("\n");

case1+2:

printf("**\n")

}

D)switch(a+b)

{case1:

printf("*\n");

case2:

printf("**\n");

default:

printf("\n");

}

3.语句printf("a\bre\′hi\′y\\\bou\n");的输出结果是(C)。

A)a\bre\′hi\′y\\\bou

B)a\bre\′hi\′y\bou

C)re′hi′y\\ou

D)abre′hi′y\bou

4.如下程序的输出结果是(A)。

#include<>

main()

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

switch(x){

case0:

b++;

case1:

a++;

case2:

a++;b++;

}

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

}

A)a=2,b=1

B)a=1,b=1

C)a=1,b=0

D)a=2,b=2

5.如下程序的输出结果是(C)。

#include<>

main()

{floatx=,y;

if(x

elseif(x

elsey=;

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

}

A)

B)

C)

D)

6.如下程序的输出结果是(C)。

#include<>

main()

{

inta=12,b=5,c=-3;

if(a>b)

if(b<0)c=0;

elsec++;

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

}

A)0

B)1

C)-2

D)-3

7.若执行以下程序时从键盘上输入9,则输出结果是(B)。

#include<>

main()

{intn;

scanf("%d",&n);

if(n++<10)printf("%d\n",n);

elseprintf("%d\n",n--);

}

A)11

B)10

C)9

D)8

8.若a,b,c1,c2,x,y均是整型变量,正确的switch语句是(A)。

A)swich(a+b);

{case1:

y=a+b;break;

case0:

y=a-b;break;

}

B)switch(a*a+b*b)

{case3:

case1:

y=a+b;break;

case3:

y=b-a,break;

}

C)switcha

{casec1:

y=a-b;break;

casec2:

x=a*d;break;

default:

x=a+b;

}

D)switch(a-b)

{default:

y=a*b;break;

case3:

case4:

x=a+b;break;

case10:

case11:

y=a-b;break

}

9.阅读以下程序:

#include<>

main()

{intx;

scanf("%d",&x);

if(x--<5)printf("%d",x);

elseprintf("%d",x++);

}

程序运行后,如果从键盘输入5,则输出结果是(B)。

A)3

B)4

C)5

D)6

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

#include<>

main()

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

d=!

a&&!

b||!

c;

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

}

A)1

B)0

C)非0的数

D)-1

11.以下程序的输出结果是(A)。

#include<>

main()

{inta=15,b=21,m=0;

switch(a%3)

{case0:

m++;break;

case1:

m++;

switch(b%2)

{default:

m++;

case0:

m++;break;

}

}

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

}

A)1

B)2

C)3

D)4

12.请阅读以下程序:

#include<>

main()

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

switch(x)

{case1:

switch(y)

{case0:

a++;break;

case1:

b++;break;

}

case2:

a++;b++;break;

}

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

}

上面程序的输出结果是(A)。

A)a=2,b=1

B)a=1,b=1

C)a=1,b=0

D)a=2,b=2

13.下面的程序(D)。

#include<>

main()

{intx=3,y=0,z=0;

if(x=y+z)printf("****");

elseprintf("####");

}

A)有语法错误不能通过编译

B)输出****

C)可以通过编译,但是不能通过连接,因而不能运行

D)输出####

14.下面程序的输出是(A)。

#include<>

main()

{intx=100,a=10,b=20,ok1=5,ok2=0;

if(a

if(b!

=15)

if(!

ok1)

x=1;

else

if(ok2)x=10;

x=-1;

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

}

A)-1

B)0

C)1

D)不确定的值

15.两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是(A)。

#include<>

main()

{intx;

scanf("%d",&x);

if(x++>5)

printf("%d",x);

else

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

}

A)7和5

B)6和3

C)7和4

D)6和4

二、填空题

1.若有定义:

inta=10,b=9,c=8;,接着顺序执行下列语句后,变量b中的值是__3____。

c=(a-=(b-5));

c=(a%11)+(b=3);

2.表示“整数x的绝对值大于5”时值为“真”的C语言表达式是__(X>5)||(X<-5)____。

3.下列程序的输出结果是,请填空。

#include<>

main()

{

inta=9,b=2;

floatx=,y=,z;

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

printf("%5.2f\n",z);

}

4.下列程序段的输出结果是__passwarm____。

intn=′c′;

switch(n++)

{

default:

printf("error");break;

case′a′:

case′A′:

case′b′:

case′B′:

printf("good");break;

case′c′:

case′C′:

printf("pass");

case′d′:

case′D′:

printf("warm");

}

5.若从键盘输入58,则以下程序输出的结果是__585858____。

#include<>

main()

{inta;

scanf("%d",&a);

if(a>50)printf("%d",a);

if(a>40)printf("%d",a);

if(a>30)printf("%d",a);

}

6.以下程序的输出结果是___16___。

#include<>

main()

{inta=0;

a+=(a=8);

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

}

7.以下程序输出的结果是__0____。

#include<>

main()

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

d=(a>b>c);

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

}

8.以下程序运行后的输出结果是_20,0_____。

#include<>

main()

{intx=10,y=20,t=0;

if(x==y)t=x;x=y;y=t;

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

}

9.设a,b,c为整型数,且a=2,b=3,c=4,则执行完语句a*=16+(b++)-(++c);后,a的值是___28___。

20)&&(X<30)||(X-100)____。

11.若inti=10;,则执行下列程序后,变量i的正确结果是__13____。

switch(i)

{case9:

i+=1;

case10:

i+=1;

case11:

i+=1;

default:

i+=1;

}

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

#include<>

main()

{inta,b,c;

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

if(a>b)

if(a>c)

printf("%d",a);

elseprintf("%d",b);

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

}

第5章循环结构

一、选择题

1.以下循环体的执行次数是(C)。

#include<>

main()

{inti,j;

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

}

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

2.有如下程序

#include<>

main()

{intn=9;

while(n>6){n--;printf("%d",n);}

}

该程序段的输出结果是(B)。

A)987B)876C)8765D)9876

3.有以下程序段

intk=0;

while(k=1)k++;

while循环执行的次数是(A)。

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

4.以下程序的输出结果是(B)。

#include<>

main()

{intnum=0;

while(num<=2)

{

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

}

}

A)1B)1C)1D)1

222

33

4

5.以下程序中,wh

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

当前位置:首页 > PPT模板 > 商务科技

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

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