算法竞赛入门经典第一章习题解答
习题1-1 平均数(average)
/* 题目:平均数(average) 描述:输入3个整数,求出他们的平均值,保留三位小数 */ #include<cstdio> int main() { int num1,num2,num3; scanf("%d%d%d",&num1,&num2,&num3); double ave=(num1+num2+num3)/3.0; printf("%.3lf\n",ave); return 0; }
习题1-2 温度(temperature)
/* 题目:温度(temperature) 描述:输入华氏温度f,输出对应的摄氏温度c,保留三位小数。提示:c=5(f-32)/9; */ #include<cstdio> int main() { double c,f; scanf("%lf",&f); c=5*(f-32)/9.0; printf("%.3lf\n",c); return 0; }
习题1-3 求和 (sum)
/* 题目:连续和(sum) 描述:输入正整数n,输出1+2+3+...+n的值。提示:目标是解决问题,不是练习编程。 */ #include<cstdio> int main() { int n; scanf("%d",&n); int sum=n*(n+1)/2; printf("%d\n",sum); return 0; }
习题1-4 正弦和余弦(sincos)
/* 题目:正弦和余弦(sum) 描述:输入正整数n(n<360),输出n度的正弦、余弦函数值 */ #include<cstdio> #include<cmath> #include<cstdlib> #include<cstdio> const double pi=4.0*atan(1.0); int main() { int n; scanf("%d",&n); printf("%lf %lf\n",sin(n/180.0*pi),cos(n/180.0*pi)); return 0; }
/* 题目:距离(distance) 描述:输入4个浮点数x1,y1,x2,y2,输出平面坐标系中点(x1,y1)到(x2,y2)的距离 */ #include<cstdio> #include<cmath> #include<cstdlib> #include<cstdio> #include<cmath> int main() { double x1,y1,x2,y2; scanf("%lf%lf%lf%lf",&x1,&y1,&x2,&y2); printf("%lf\n",sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2))); return 0; }
习题1-6 偶数(odd)
/* 题目:偶数(odd) 描述:输入一个整数,判断它是否为偶数。如果是,则输出"yes",否则输出"no"。 */ #include<cstdio> #include<cmath> #include<cstdlib> #include<cstdio> #include<cmath> int main() { int n; while(scanf("%d",&n)==1) { if(n%2==0) { printf("yes\n"); } else { printf("no\n"); } } return 0; }
习题1-7 打折(discount)
/* 题目:打折(discount) 描述:一件衣服95元,若消费满300元,可打八五折。输入购买衣服件数,输出需要支付的金额(单位:元),保留两位小数。 */ #include<cstdio> #include<cmath> #include<cstdlib> #include<cstdio> #include<cmath> int main() { int n; while(scanf("%d",&n)==1) { if(n>3) { printf("%.2lf\n",95*n*0.95); } else { printf("%.2lf\n",95*n*1.0); } } return 0; }
习题1-8 绝对值(abs)
/* 题目:绝对值(discount) 描述:输入一个浮点数,输出它的绝对值,保留两位小数。 */ #include<cstdio> #include<cmath> #include<cstdlib> #include<cstdio> #include<cmath> int main() { double n; while(scanf("%lf",&n)==1) { printf("%.2lf\n",fabs(n)); } return 0; }
习题1-9 三角形 (triangle)
/* 题目:三角形(triangle) 描述:输入三角形三边长度值(均为正整数),判断它是否能为直角三角形的三个边长,如果可以,输出"yes",否则输出"no"。如果根本无法构成三角形,则输出"not a triangle"。 */ #include<cstdio> #include<cmath> #include<cstdlib> #include<cstdio> #include<cmath> int main() { int a,b,c; scanf("%d%d%d",&a,&b,&c); if(a+b>c&&a+c>b&&c+b>a) { if(a*a+b*b==c*c||a*a+c*c==b*b||b*b+c*c==a*a) { printf("yes\n"); } else { printf("no\n"); } } else { printf("not a triangle\n"); } return 0; }
/* 题目:年份(year) 描述:输入年份,判断是否为闰年。如果是,则输出"yes",否则输出"no"。 */ #include<cstdio> #include<cmath> #include<cstdlib> #include<cstdio> #include<cmath> int main() { int year; scanf("%d",&year); if((year%4==0&&year%100!=0)||(year%400==0)) { printf("yes\n"); } else { printf("no\n"); } return 0; }
版权声明:本文为博主原创文章,未经博主允许不得转载。
posted on 2015-04-04 11:53 Tob__yuhong 阅读(192) 评论(0) 编辑 收藏 举报