《C语言程序设计教程》(第三版)李凤霞 主编 - 第四章习题答案

发布时间 : 星期二 文章《C语言程序设计教程》(第三版)李凤霞 主编 - 第四章习题答案更新完毕开始阅读

第四章习题参考答案

一、 单项选择题(P83)

1、putchar()函数可以向屏幕输出一个( )

A)整形变量值 B)实型变量值 C)字符 D)字符或字符变量值 2、以下选项中不是C语句的是( )。

A){int i;i++;printf(\;} B); C)a=5,c=10 D){;} 3、以下合法的C语句是( )。

A){a=b}; B)k=int(a+b); C)k=a+b=c; D)--i; 4、执行以下程序段后,c3的值是( )。 int c1=1,c2=2,c3; c3=c1/c2;

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

5、若int a,b,c;则为它们输入数据的正确的语句是( )。 A)read(a,b,c); B)scanf(\C)scanf(\D)scanf(\ 6、若float a,b,c; 要通过语句:scanf(\分别为a,b,c输入10,22,23。以下不正确的输入形式是( )。

A)10 B)10.0,22.0,33.0 C)10.0 D)10 22 22 22.0 33.0 33 33

7、若在键盘上输入:283.1900,想使单精度实型变量c的值为283.19,则正确的输入语句是( )。

A)scanf(\ B)scanf(\C)scanf(\

8、执行语句:printf(\,12345.678);的输出是( )。

A)|2345.67800| B)|12345.6780| C)|12345.67800| D)|12345.678| 9、若有以下程序段,其输出结果是( )。 int a=0,b=0,c=0;

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

printf(\

A)3,0,-10 B)0,0,5 C)-10,3,-10 D)3,0,3 10、若a为int类型,且a=125,执行下列语句后的输出是( )。

printf(\

A)125,175,7D B)125,176,7f C)125,176,7D D)125,175,2F

二、 填空题

1.{a=3; c+=a-b;}在语法上被认为是________条语句,空语句的形式是______。

(一条 ;)

2.若float x; 以下程序段的输出结果是__________。(5.169000)

x=5.16894

printf(\

3.以下程序段中输出语句执行后的结果依次是___________、__________、__________。 (1)-200 2500 (2)i=-200,j=2500 (3)i=-200 j=2500 int i=-200,j=2500; printf(\

printf(\printf(\

4.当运行以下程序时,在键盘上从第一列开始输入9876543210(此处代表按回车键),则程序的输出结果是__________。(a=98, b=765.000000, c=4321.000000)

main()

{int a; float b,c;

scanf(\

printf(\ }

5.以下程序段要求通过scanf函数给变量赋制,然后输出变量的值。

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

int k; float a;double x; scanf(\

printf(\ 三种可能的输入是: (1) 100<回车> 25.81<回车> 1.89234<回车> (2) 100<空格> 25.81<空格> 1.89234<回车> (3) 100 25.81 1.89234<回车> 6.执行下列程序段后,输出结果是__________。(0,0,3) int a,b,c; a=b=c=0;

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

printf(\

7.下面程序的输出结果是________。(3)

main()

{int x=10,y=3,z;

printf(\ }

8.若double a,b,c;

要求为a、b、c分别输入10、20、30。输入序列为:(□表示空格)

□ 10.0□□20.0□□30.0

则正确的输入语句是_____________。(输入语句的格式是: scanf(\)

9.下面程序的输出结果是__________。(13 13.000000 13.000000) main()

{double a;float b;int c; c=b=a=40/3;

printf(\ }

10. 若有int a=10,b=20,c=30; 则能使a和c的值互换的语句是________。 三种方法:(1) 增加一个临时变量t。t=a; a=c; c=t; (2) a=a+c; c=a-c; a=a-c; (3) a=a+b;c=c-b; 三、编程题

1、编写程序,输出如下信息:

********************************** very good!

********************************** main( )

{ printf(\ printf(\

printf(\ }

2、编些程序,输入9时23分并把它化成分钟后输出。(从零点开始计算) main( )

{ int hour,min;

scanf(\ min=60*hour+min; printf(\}

3、编写程序,分别转换摄氏温度-10℃,0℃,15℃,34℃为华氏温度,摄氏温度与华氏温度满足下列关系式(C表示摄氏温度,F表示华氏温度) C=(5/9)(f-32) main( )

{ float c , f; scanf(\ f=32+9.0*c/5;

printf(\

}

按题目要求分别输入-10,0,15和34计算相应的华氏温度。

4、设圆半径为5,编写成,求圆的周长和圆面积。 main()

{ float r,l,s; scanf(\ l=2*3.141592*r; s=3.14159*r*r;

printf(\}

5、编写程序,输入三角形的3个边长A、B、C,求三角形的面积搜索。公式为: SS?s(s?a)(s?b)(s?c)

其中,s=(a+b+c)/2 #include main( )

{ float a,b,c,s,area;

scanf(\

if((a+b>c)||(a+c>b)||(b+c>a)) /* 判断两边之和大于第三边 */ { s=(a+b+c)/2;

area=sqrt(s*(s-a)*(s-b)*(s-c)); /*调用开方函数,计算面积 */

printf(\} }

6、设a=3,b=4,c=5,d=1.2,e=2.23,f=-43.56,编写程序,使程序输出: a=□□3,b=4□□□,c=**5 d=1.2

e=□□2.23 f=-43.56□□** main( )

{ int a=3,b=4,c=5;

float d=1.2,e=2.23,f=-43.56;

printf(\

printf(\}

7、编写程序,读入3个整数给a,b,c,然后交换它们中的数,使a存放b的值,b存放c的值,c存放a的值。 main( )

{ int a,b,c,t ;

scanf(\

printf(\ t=a; a=b; b=c; c=t;

printf(\}

8、编写程序输入3个数a,b,c,求它们的平均值,并安如下形式输出: average of **、** and ** is **.**

其中,3个数**依次表示a,b,c的值,**.** 表示a,b,c的平均值 main( )

{ float a,b,c,aver;

printf(“Please input three numbers:\\n”); scanf(\ aver=(a+b+c)/3;

printf(\} 9、执行下列程序,按制定方式输入(□表示空格),能否得到指定的输出结果?若不能,请修改程序,使之能得到指定的输出结果。 输出:2□3□4

输出:a=2,b=3,c=4 x=6,y=24 main( )

{ int a,b,c ,x,y;

scanf(\

x=a*b;y=x*c;

printf(\printf(\}

联系合同范文客服:xxxxx#qq.com(#替换为@)