第一章课后习题
参考书籍:算法竞赛入门经典(第二版)16页
1-1
输入三个整数,输出它们的平均值,保留三位小数。
样例输入
5 9 11
样例输出
8.333
程序如下
#include<stdio.h>
int main()
{
int a,b,c;
float d;
scanf("%d %d %d",&a,&b,&c);
d=a+b+c;
d=d/3;
printf("%.3f\n",d);
return 0;
}
1-2
输入华氏温度f,输出对应的摄氏温度,保留三位小数。提示c=5(f-32)/9。
样例输入
166
样例输出
74.444
#include<stdio.h>
int main()
{
int a;
double d;
scanf("%d",&a);
d=(double)5*(a-32)/9;
printf("%.3f\n",d);
return 0;
}
1-3 连续和
输入正整数n,输出1+2+3+···+n的值。注意不要使用for循环,目标是解决问题,不是编程
样例输入
100
样例输出
5050
分析:使用循环结构确实很简单,但是不使用也可以做出,此时就要观察发现
n+1=n-1+2=n-2+3=···
又因为有n个数,所以得出有n/2个n+1,现在我们就可以编程了
#include<stdio.h>
int main()
{
int a;
scanf("%d",&a);
printf("%d\n",(a+1)*a/2);
return 0;
}
1-4 连续和
输入整数n(n<360),输出n度的正余值。
样例输入
60
样例输出
0.866 0.500
#include<stdio.h>
#include<math.h>
#define pi acos(-1.0)
int main()
{
int a=0;
scanf("%d",&a);
printf("%.3lf %.3lf\n",sin((a*pi)/180),cos((a*pi)/180));
return 0;
}
1-5 打折
一件衣服95元,若消费满300元,可打八五折。输入购买衣服件数,输出需要支付的金额。保留两位小数。
样例输入样例输出
#include<stdio.h>
#include<math.h>
#define pi acos(-1.0)
int main()
{
int a=0;
scanf("%d",&a);
printf("%.3lf %.3lf\n",sin((a*pi)/180),cos((a*pi)/180));
return 0;
}