C语言程序设计教程李含光郑关胜清华大学出版社习题答案习题答案[完美打印版]
第1章习题参考答案
1.单项选择题
(1)A (2)C (3)D (4)C (5)B
2.填空题
(1)函数
(2)主函数(main)
printf() , scanf()
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(default标号
(7)while , do while , fordo while(9)本次(10)本层
3.阅读程序,指出结果
(1)yes(*&(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=12i=6,k=4
x:y , u:z
m=n , m!=0 ,m=m/10
t
(4)m%5==0 , printf(“%d\n”,k)
cx=getchar() , cx!=front , cx
(6)double s=0 , 1.0/k , %lf
(7)s>=0 , s
5.编程题
(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);
retur