人民邮电出版社c语言课后题答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

人民邮电出版社

《C语言程序设计》

贾宗璞许合利主编

课后答案

第1章

1.选择题

(1) C (2) B (3) D

2.填空题

(1)main (2) main (3) 有穷性、确定性、有零个或多个输入、有一个或多个输出、有效性(4) 顺序、分支和循环(5) 自顶向下,逐步细化、模块化设计、结构化编码

第2章

1.选择题

BBCDA DDBBA BBDCB

2、填空题

(1) 数字、字母、下划线 (2)0 (3) 4、8 (4) (a+b)*c/(a-b) (5) -60 (6)-16 (7)3 (8)6、4、2 (9)0 (10)10、6 (11)5.500000 (12) 12、4

(13)double (14) 0 (15)16 (16)6.6

3、编程题

(1)

main()

{

printf("int:%5d\n"

"float:%5d\n"

"char:%5d\n"

"double:%5d\n"

"long:%5d\n",

sizeof(int),+-

sizeof(float),

sizeof(char),

sizeof(double),

sizeof(long));

}

(2)

#define RAT 1.60934

main()

{

float k=0.0;

printf("input the km:");

scanf("%f",&k);

printf("\nmile:%f",k*RAT);

}

第3章

1.选择题

(1) ~(10):DDCDCDCDBC

2.解析题

(1) x=170,x=ㄩㄩㄩ170,x=ㄩㄩㄩ252, x=ㄩㄩㄩ170

x=170,x=170ㄩㄩㄩ,x=ㄩㄩㄩ170,x=%6d

a=513.789185,a=ㄩㄩ513.79,a=513.78918457,a=513.78918457

(2) a=3ㄩb=7x=8.5ㄩy=71.82c1=Aㄩc2=a

3.编程题

(1) main()

{

int x,y;

scanf("%d%d",&x,&y);

printf("商数=%d,余数=%d",x/y,x%y);

system("pause");

}

(2)

main()

{

double x,y,z,avg;

scanf("%lf%lf%lf",&x,&y,&z);

avg=(x+y+z)/3;

printf("%.1lf",avg,avg);

system("pause");

}

第4章

1.选择题

(1)~(10) CCAADCCABD

2.填空题

(1) ch>='A' && ch<='Z' ch=ch-32

(2) x<=10 && x>2 x<=2 && x>-1 y=-1

(3) a+b>c && a+c>b && b+c>a a==b&&a==c a==b || a==c || b==c

(4) mark/10 k=1 case 9

(5) x<0 c=x/10 y!=-2

3.编程题

(1)

#include

main()

{

int x;

printf("please input a number:");

scanf("%d",&x);

if(x%2==0) printf("x is a even number");

else printf("x is a odd number");

}

(2)

#include

main()

{

int x,y;

printf("please input a number£o");

scanf("%d",&x);

if(x<=-5) printf("the number is error");

else if(x<0) {y=x; printf("%d",y);}

else if(x==0) {y=x-1;printf("%d",y);}

else if(x<10) {y=x+1;printf("%d",y);}

else printf("the number is error");

}

(3)

#include

main()

{ int a,m;

printf("please input a number:");

scanf("%d",&a);

switch(a/10)

{ case 0:

case 1:

case 2:m=1;break;

case 3:m=2;break;

case 4:m=3;break;

case 5:m=4;break;

default:m=5;break;

}

printf("%d",m);

}

(4)

#include

main()

{

float price,tax;

printf("please input the price of product:");

scanf("%f",&price);

if(price>10000) tax=price*0.05;

else if(price>5000) tax=price*0.03;

else if(price>1000) tax=price*0.02;

else tax=0;

printf("%f",tax);

}

(5)

#include

main()

{

float score;

printf("please input the score of student:");

scanf("%f",&score);

if(score>=85) printf("VERY GOOD");

else if(score>=60) printf("GOOD");

else printf("BAD");

}

第5章

1.选择题

(1)d (2) c (3)a (4)d (5)a (6)d (7)d (8)b (9)d (10)b (11)c (12)b (13)d (14)a (15)c

2.填空题

(1) ==0 m=m/k k++ (2) 5 4 6 (3) 3*i-2

(4) -= *= (5) 8 5 2 (6) j++ i%j==0 j>=i

(7)sum

3.改错题

(1) 第一处改正: For改为for

第二处改正: ave=sum/4改为ave=sum/4.0

(2) 第一处改正: j<=9

第二处改正: m=100*i+10*j+k

3.编程题

(1)

#include main()

{

int s;

float n,t,sum;

t=1; sum=0; n=1; s=1.0;

while(n<=100)

{

sum=sum+t;

n=n+1;

s=-s;

t=s/n;

}

printf("sum=%10.6f\n",sum);

}

(2) 利用辗除法,直到b为0为止

main()

{ int p,r,n,m,temp;

printf("input two integer n,m:");

scanf("%d,%d",&n,&m);

if(n

{ temp=n;

n=m;

m=temp;

}

p=n*m;

while(m!=0)

{

r=n%m;

n=m;

m=r;

}

printf("greatest common divisor is:%d\n",n); //最大公约数printf("lease common multiple is:%d\n",p/n); //最小公倍数

}

(3) 采取逆向思维的方法,从后往前推断。

main()

{

int day,x1,x2;

day=9;

x2=1;

while(day>0)

{ x1=(x2+1)*2; /*第一天的桃子数是第2天桃子数加1后的2倍*/ x2=x1;

day--;

}

printf("the total is %d\n",x1);

}

(4)

#include

main()

{

int i;

long int n=1;

相关文档
最新文档