C语言程序设计教程_李含光_郑关胜_清华大学出版社习题答案习题答案[完美打印版]

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

第1章习题参考答案

1.单项选择题

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

2.填空题

(1)函数

(2)主函数(main)

(3)printf() ,scanf()

第2章习题参考答案

1.单项选择题

1-5 CBCCC 6-10 CDCDC 11-13 DBB

2.填空题

(1)1 (2)26 (3)6 , 4 , 2 (4)10 , 6(5)3.000000 (6)双精度(double)(7)9 (8)字母,数字,下划线(9)13.700000 (10)11(11)((m/10)%10)*100+(m/100)*10+m%10(12)0

(13)10 ,9 ,11(15)(x<0&&y<0)||(x<0&&z<0)||(y<0||z<0)(16)double (17)x==0(18)sqrt(fabs(a-b))/(3*(a+b))(19)sqrt((x*x+y*y)/(a+b))

第3章习题参考答案

1.单项选择题

1-5 CCCDD 6-10 BCDBC 11-15 BCBBB 16 A

2.填空题

(1)用;表示结束(2){ }(3)y=x<0?1:x==0?0:-1

(4)y%4==0&&y%100!=0||y%400==0(5)上面未配对(6)default标号(7)while ,do while ,for(8)do while(9)本次(10)本层

3.阅读程序,指出结果

(1)yes(2)*&(3)ABother(4)28 70(5)2,0(6)8(7)36 (8)1(9)3,1,-1,3,1,-1(10)a=12 ,y=12(11)i=6,k=4 (12)1,-2

4.程序填空

(1)x:y ,u:z

(2)m=n ,m!=0 ,m=m/10

(3)t

(4)m%5==0 ,printf(“%d\n”,k)

(5)cx=getchar() , cx!=front , cx

(6)double s=0 , 1.0/k , %lf (7)s>=0 , s

(1).

#include

int main()

{

double x,y;

scanf("%lf",&x);

if(x<1)

y=x;

else if(x>=1.0&&x<10)

y=2*x-11;

else

y=3*x-11;

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

return 0;

}

(2).

#include

int main()

{

double x,y,z,min;

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

if(x>y)

min=y;

else

min=x;

if(min>z)

min=z;

printf("min=%lf\n",min);

return 0;

}

(3).

#include

int main()

{

int y,m,d,flag,s=0,w,i;

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

flag=(y%4==0&&y%100!=0||y%400 ==0);

w=((y-1)*365+(y-1)/4-(y-1)/100+(y-1 )/400)%7;

for(i=1;i<=m;i++)

{

switch(i)

{

case 1:s=d;break;

case 2:s=31+d;break;

case 3:s=59+d;break;

case 4:s=90+d;break;

case 5:s=120+d;break;

case 6:s=151+d;break;

case 7:s=181+d;break;

case 8:s=212+d;break;

case 9:s=243+d;break;

case 10:s=273+d;break;

case 11:s=304+d;break;

case 12:s=334+d;break;

}

if(flag==1&&m>2)

s=s+1;

s=(w+s)%7;

if(s==0)

printf("星期日\n");

else

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

return 0;

}

(4).

#include

int main()

{

float p,r;

scanf("%f",&p);

if(p<=10)

r=p*0.1;

else if(p>10&&p<=20)

r=10*0.1+(p-10)*0.075;

else if(p>20&&p<=40)

r=10*0.1+10*0.075+(p-20)*0.05;

else if(p>40&&p<=60)

r=10*0.1+10*0.075+20*0.05+(p-40 )*0.03;

else if(p>60&&p<=100)

r=10*0.1+10*0.075+20*0.05+20*0. 03+(p-60)*0.015;

else if(p>100)

r=10*0.1+10*0.075+20*0.05+20*0. 03+40*0.015+(p-100)*0.01;

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

return 0;

}

(5).

#include

int main()

{

char c;

while((c=getchar())!='\n')

{

if(c>='a'&&c<='z')

c=c-32;

putchar(c);

}

return 0;

}

(6).

#include

int main()

{

int m,k=2;

printf("输入一个正整数:\n");

scanf("%d",&m);

while(k

if(m%k==0)

{

printf("%4d",k);

m=m/k;

}

else

k++;

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

return 0;

}

(7).

#include

int main()

{

int a,n,s=0,p=0,i;

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

for(i=1;i<=n;i++)

{

p=p*10+a;

s=s+p;

}

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

return 0;

}

(8).

#include

int main()

相关文档
最新文档