C语言按章节习题带答案Word文件下载.docx

上传人:b****7 文档编号:22273251 上传时间:2023-02-03 格式:DOCX 页数:25 大小:25.33KB
下载 相关 举报
C语言按章节习题带答案Word文件下载.docx_第1页
第1页 / 共25页
C语言按章节习题带答案Word文件下载.docx_第2页
第2页 / 共25页
C语言按章节习题带答案Word文件下载.docx_第3页
第3页 / 共25页
C语言按章节习题带答案Word文件下载.docx_第4页
第4页 / 共25页
C语言按章节习题带答案Word文件下载.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

C语言按章节习题带答案Word文件下载.docx

《C语言按章节习题带答案Word文件下载.docx》由会员分享,可在线阅读,更多相关《C语言按章节习题带答案Word文件下载.docx(25页珍藏版)》请在冰豆网上搜索。

C语言按章节习题带答案Word文件下载.docx

 

22、请指出以下C程序的错误所在

#includestdio.h

main/*mainfunction*/

{floata,b,c,v;

/*a,b,caresides,visvolumeofcube*/

a=2.0;

b=3.0;

c=4.0

v=a*b*c;

printf(“%f\n”,v)

}

第三章

23、若a、b、c、d、都是int类型变量且初值为0,以下选项中不正确的赋值语句是。

A)a=b=c=d=100;

B)d++;

C)c+b;

D)d=(c=22)-(b++);

24、以下选项中不是C语句的是。

A){inti;

i++;

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

}B);

C)a=5,c=10D){;

}

25、以下合法的C语言赋值语句是。

A)a=b=58B)k=int(a+b);

C)a=58,b=58D)--i;

26、以下程序的输出结果是。

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

    main()

    {intx=10,y=3;

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

27、若变量已正确说明为int类型,要给a、b、c输入数据,以下正确的输入语句是。

 A) read(a,b,c);

 

 B) scanf(“%d%d%d”,a,b,c);

 C) scanf(“%D%D%D”,&

a,%b,%c);

 D) scanf(“%d%d%d”,&

a,&

b,&

c);

28、若变量已正确定义,要将a和b中的数进行交换,下面不正确的语句组是   。

 A) a=a+b, b=a-b, a=a-b;

B) t=a, a=b, b=t;

 C) a=t;

 t=b;

 b=a;

D) t=b;

 a=t;

29、若有以下程序段,c3中的值是。

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

intc1=1,c2=2,c3;

c3=c1/c2;

30、若有以下程序段,其输出结果是     。

 A) 0,0,-10B) 0,0,5C) -10,3,-10D) 3,0,-10

  inta=0,b=0,c=0;

  c=(a-=a-5),(a=b,b+3);

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

31、当运行以下程序时,在键盘上从第一列开始输入9876543210<

CR>

(此处<

代表Enter),则程序的输出结果是    。

 A) a=98,b=765,c=4321

 B) a=10,b=432,c=8765

 C) a=98,b=765.000000,c=4321.000000 

 D) a=98,b=765.0,c=4321.0

main( )

{inta;

floatb,c;

scanf(“%2d%3f%4f”,&

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

32、以下程序的输出结果是     。

 A) a=%2,b=%5   B) a=2,b=5

 C) a=%%d,b=%%d D) a=%d,b=%d

main()

{inta=2,b=5;

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

33、以下程序段的输出是     。

A)*496*B)*496*C)*000496*D)输出格式符不合法

intx=496;

Printf(“*%-06d*\n”,x);

34、以下程序段的输出是     。

A)|3.1415|B)|3.0|C)|3|D)|3.|

floata=3.1415;

Printf(“|%6.0f|\n”,a);

35、以下程序段的输出是     。

A)|2345.67800|B)|12345.6780|

C)|12345.67800|D)|12345.678|

printf(“|%10.5f|\n”,12345.678);

36、若从终端输入以下数据,要给变量c赋以283.19,则正确的输入语句是   。

A)scanf(“%f”,&

B)scanf(“%8.4f”,&

C)scanf(“%6.2f”,&

D)scanf(“%8”,&

283.1900<

37、以下程序的输出结果是     。

A)98B)89C)66D)以上三个都不对

#include“math.h”

{doublea=-3.0,b=2;

printf(“%3.0f%3.0f\n”,pow(b,fabs(a)),pow(fabs(a),b));

38、若有以下定义,请写出以下程序段中输出语句执行后的输出结果。

 

(1)___________

(2)     (3)___________

  inti=-200,j=2500;

  printf(“

(1)%d%d”,i,j);

  printf(“

(2)i=%d,j=%d\n”,i,j);

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

39、变量i、j、k已定义为int类型并有初值0,用以下语句进行输入时:

scanf(“%d”,&

i);

scanf(“%d”,&

j);

scanf(“%d”,&

k);

当执行第一个输入语句,从键盘输入:

12.3<

<

表示Enter键

则变量i、j、k的值分别是________、_______、_______。

40、复合语句在语法上被认为是_______。

空语句的形式是     。

41、C语句的最后用_______结束。

42、以下程序段,要求通过scanf语句给变量赋值,然后输出变量的值。

写出运行时给k输入100,给a输入25.81,给x输入1.89234时的三种可能的输入形式     、_____、_____。

  intk;

floata;

doublex;

  scanf(“%d%f%lf”,&

k,&

x);

  pirntf(“k=%d,a=%f,x=%f\n”,k,a,x);

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

doublea=513.789215;

printf(“a=%8.6f,a=%8.2f,a=%14.8f,a=%14.8lf\n”,a,a,a,a);

44、以下程序多处有错。

要按下面指定的形式输入数据和输出数据时,请对该程序做相应的修改。

main

{doublea,b,c,s,v;

printf(inputa,b,c:

\n);

scanf(“%d%d%d”,a,b,c);

s=a*b;

/*计算长方形面积*/

/*计算长方体体积*/

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

printf(“s=%f\n”,s,”v=%d\n”,v);

当程序执行时,屏幕的显示和要求输入形式如下:

inputa,b,c:

2.02.03.0此处的2.02.03.0是用户输入的数据

a=2.000000,b=2.000000,c=3.000000此处是要求的输出形式

s=4.000000,v=12.000000

45、编写程序,把560分钟换算成用小时和分钟表示,然后进行输出。

46、编写程序,输入两个整数:

1500和350,求出它们的商数和余数并进行输出。

47、编写程序,读入三个双精度数,求它们的平均值并保留此平均值小数后一位数,对小数点后第二位数进行四舍五入,最后输出结果。

48、编写程序,读入三个整数给a、b、c,然后交换它们中的数,把a中原来的值给b,把b中原来的值给c,把c中原来的值给a。

49、下列运算符中优先级最高的运算符是     。

   A)!

B)%C)==D)&

&

50、下列运算符中优先级最低的运算符是     。

 A) ||B) !

=C)<

=D)+

51、为表示关系x>

=y>

=z,应使用的C语言表达式是     。

A)(x>

=y)&

(y>

=z)B)(x>

=y)AND(y>

=z)

C)(x>

=z)D)(x>

52、设a、b和c都是int型变量,且a=3,b=4,c=5;

则以下的表达式中,值为0的表达式是     。

A)a&

bB)a<

=bC)a||b+c&

b-cD)!

((a<

b)&

!

c||1)

53、以下程序的输出结果是:

     。

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

main()

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

if(a<

b)

if(b<

0)c=0;

elsec+=1;

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

54、以下程序的输出结果是:

     。

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

main()

{intw=4,x=3,y=2,z=1;

printf(“%d\n”,(w<

x?

w:

z<

y?

z:

x));

55、若执行以下程序时从键盘上输入3和4,则输出结果是     。

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

main()

{inta,b,s;

scanf(“%d%d”,&

b);

s=a;

b)s=b;

s*=s;

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

56、下面的程序片段所表示的数学函数关系是。

  -1(x<

0)     1(x<

0)

y=-1;

if(x!

=0) y=1;

if(x>

0)y=1;

elsey=0;

A)y=0(x=0) B)y= -1(x=0)

   1(x>

0)     0(x>

0)

0(x<

0)     -1(x<

C)y=0(x=0)D)y=1(x=0)

0)     0(x>

57、运行以下程序后,输出     。

A)####B)&

C)####&

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

main()

{intk=-3;

if(k<

=0)printf(“****\n”)

elseprintf(“&

\n”);

}

58、若a和b均是正整数型变量,以下正确的switch语句是  。

A)switch(pow(a,2)+pow(b,2))(注:

调用求幂的数学函数)

  {case1:

case3:

y=a+b;

break;

case0:

case5:

y=a-b;

  }

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

  {case3:

case1:

y=b-a;

break;

C)switcha

  {default:

x=a+b;

case10:

break;

case11:

y=a*d;

D)switch(a+b)

{case10:

    case11:

59、C语言中用____表示逻辑值“真”,用____表示逻辑值

60、C语言中的关系运算符按优先级别是     、______。

61、C语言中的逻辑运算符按优先级别是  、  、  。

62、C语言中的关系运算符和逻辑运算符的优先级别是  、  、  、  、  。

63、C语言中逻辑运算符______的优先级高于算术运算符。

64、将下列数学式改写成C语言的关系表达式或逻辑表达式     和__________  A)a=b或a<

cB)|x|>

4

65、请写出以下程序的输出结果___。

  main( ){inta=100;

if(a>

100)printf(“%d\n”,a>

100);

   elseprintf(“%d\n”,a<

=100);

66、请写出与以下表达式等价的表达式

   A)_________B)__________.

   A)!

(x>

0)B)!

67、当a=1,b=2,c=3时,以下if语句执行后,a、b、c中的值分别为___、___、___.

if(a>

c)

b=a;

a=c;

c=b;

68、若变量巳正确定义,以下语句段的输出结果是_______。

x=0;

y=2;

z=3;

switch(x)

{case0:

switch(y=2)

{case1:

printf(“*”);

case2:

printf(“%”);

switch(z)

printf(“$”);

default:

printf(“#”);

}}

69、请将以下语句改写成switch语句。

if(a<

30)m=1;

elseif(a<

40)m=2;

 elseif(a<

50)m=3;

     elseif(a<

60)m=4;

      elsem=5;

70、有一函数:

 x(-5<

x<

y=x-1(x=0)

 x+1(0<

10)

编写一程序,要求输入x的值,输出y的值。

分别用

(1)不嵌套的if语句

(2)嵌套的if语句(3)if-else语句(4)switch语句

第四章

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

   A) 9B) 1C) 11D) 10

intk,j,s;

for(k=2;

k<

6;

k++,k++)

{s=1;

for(j=k;

j<

j++)s+=j;

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

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

A)12B)15C)20D)25

inti,j,m=0;

for(i=1;

i<

=15;

i+=4)

for(j=3;

j<

=19;

j+=4)m++;

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

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

A)10B)9C)10D)9

9898

8787

76

intn=10;

while(n>

7)

{n--;

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

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

A)1B)30C)1–2D)死循环

intx=3;

do

{printf(“%3d”,x-=2);

while(!

(--x));

75、以下程序的输出结果是     。

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

main()

{inti,sum;

for(i=1;

i++)sum+=sum;

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

76、以下程序的输出结果是     。

A)741B)852C)963D)875421

{inty=10;

for(;

y>

0;

y--)

if(y%3==0)

{printf(“%d”,--y);

continue}

77、若x是int型变量,以下程序段的输出结果是     。

A)**3B)##3C)##3D)**3##4

##4**4**4##5**5

**5##5

for(x=3;

x++)

printf((x%2)?

(“**%d”):

(“##%d\n”),x);

78、以下程序的输出结果是     。

A)*#*#*#$B)#*#*#*$C)*#*#$D)#*#*$

{inti;

=5;

i++)

{if(i%2)printf(“*”);

elsecontinue;

printf(“#”);

printf(“$\n”);

79、以下程序的输出结果是     。

A)3981B)4284C)2668D)2870

{intx,i;

=100;

{x=i;

if(++x%2==0)

if(++x%3==0)

if(++x%7==0)

printf(“%d”,x);

printf(“\n”);

80、当执行以下程序段后,i的值是___、j的值是___、k的值是___。

inta,b,c,d,i,j,k;

a=10;

b=c=d=5;

i=j=k=0;

for(;

a>

b;

++b)i++;

while(a>

++c)j++;

dok++;

while(a>

d++);

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

intk,n,m;

n=10;

m=1;

k=1;

while(k<

=n)m*=2;

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

82、以下程序段的输出结果是____.

main( )

{intx=2;

while(x--);

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

83、以下程序段的输出结果是____.

inti=0,sum=1;

do{sum+=i++;

}while(i<

5);

84、有以下程序段:

s=1.0;

for(k=1;

=n;

k++)s=s+1.0/(k*(k+1));

printf(“%f\n”,s);

请填空,使下面的程序段的功能完全与之等同。

s=0.0;

_______;

k=0;

do

{s=s+d;

________;

d=1.0/(k*(k+1));

while(________);

printf(“%f\n”,s);

85、以下程序的功能是:

从键盘上输入若干学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入。

请填空。

{floatx,amax,amin;

scanf(“%f”,&

amax=x;

amin=x;

while(________)

{if(x>

amax)amax=x;

if(_______)amin=x;

scanf(“%f”,&

}

printf(“\namax=%f\namin=%f\n”,amax,amin);

86、编写程序,求1-3+5-7+…-99+101的值。

87、编写程序,求e的值。

e1+1/1!

+1/2!

+1/3!

+..+1/n!

 (1)用for循环,计算前50项。

 (2)用while循环,要求直至最后一项的值小于10-4

88、编写程序,输入从公元1000年至2000年所有闰年的年号。

每输出3个年号换一行。

判断公元年是否为闰年的条件是:

公元年数如能被4整除,而不能被100整除,则是闰年;

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

当前位置:首页 > 初中教育 > 科学

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

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