第1章习题参考答案
1.单项选择题
(1) A (2) C (3) D (4) C (5) B2.填空题
(1)函数
(2)主函数(main)
(3)printf() , scanf()
第2章习题参考答案
1.单项选择题
(1) C (2) B (3) C (4) C (5) C(6) C (7) D (8) C (9) D (10) C(11) D (12) B (13) B
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) C (2) C (3) C (4) D (5) D(6) B (7) C (8) D (9) B (10) C(11) B (12) C (13) B (14) B (15) B
(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<eps , t*n/(2*n+1) , printf(“%lf\n”,2*s)
(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<gmin ,
5.编程题
(1).
#include <stdio.h>
int main()
{
double x,y;
scanf("%lf",&x);
if(x<1)
c语言大学教程 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 <stdio.h>
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 <stdio.h>
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 <stdio.h>
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 <stdio.h>
int main()
{
char c;
while((c=getchar())!='\n')
{
if(c>='a'&&c<='z')
c=c-32;
putchar(c);
}
return 0;
}
(6).
#include<stdio.h>
int main()
{
int m,k=2;
printf("输入一个正整数:\n");
scanf("%d",&m);
while(k<m)
if(m%k==0)
{
printf("%4d",k);
m=m/k;
}
else
k++;
printf("%4d\n",m);
return 0;
}
(7).
#include<stdio.h>
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<stdio.h>
int main()
{
int i,j,k;
for(i=1;i<=9;i++)
for(j=0;j<=9;j++)
for(k=0;k<=9;k++)
printf("%5d",100*i+10*j+k);
return 0;
}
(9).
#include<stdio.h>
#include<math.h>
int main()
{
float a=-10,b=10,x,f1,f2,f;
f1=(((2*a-4)*a+3)*a)-6;
f2=(((2*b-4)*b+3)*b)-6;
do
{
x=(a+b)/2;
f=(((2*x-4)*x+3)*x)-6;
if(f*f1<0)
{
b=x;
f2=f;
}
else
{
a=x;
f1=f;
}
}while(fabs(f)>=1e-6);
printf("%6.2f\n",x);
return 0;
}
(10).
#include<stdio.h>
#include<math.h>
int main()
{
int n=2;
double eps,t,s=0,x;
scanf("%lf %lf",&x,&eps);
t=x;
s=t;
while(fabs(t)>=eps)
{
t=-t*(2*n-3)*x*x/(2*n-2);
s=s+t/(2*n);
n++;
}
printf("%d,%lf\n",n,s);
return 0;
}
(11).
#include<stdio.h>
int main()
{
unsigned long s,t=0,p=1;
scanf("%u",&s);
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论