算法竞赛入门 刘汝佳 例题代码及练习题代码(一)

来源:互联网 发布:人工智能三级推进体系 编辑:程序博客网 时间:2024/06/11 19:26

前几天开始看刘汝佳的《算法入门竞赛》谢了挺多的代码,本来准备等写完一起贴上来的,前几天因为系统崩溃的缘故,把以前敲的代码全都弄丢了~ ~,心塞塞啊,所以决定现在写一部分就上传一部分,下面是我自己写的代码,供大家参考欢迎大家批评指正,代码的运行环境是dev_cpp,如果有什么错误的话还是希望大家能够给我指出来,万分感谢!在写完所有的代码后,我会上传的github上供大家下载(如果你需要的话),欢迎大家关注我的博客.

废话不多说了现在上传第一章的代码

例题1_1  圆柱的表面积

//输入底面半径 r 和  高 h,输出圆柱的表面积保留三位小数#   include <stdio.h>#   include <math.h>int main(){const double pi=4*atan(1.0);double r,h,s1,s2,s;scanf("%lf%lf",&r,&h);s1=pi*r*r;s2=2*pi*r*h;s=2*s1+s2;printf("%.3lf",s);return 0;} 


例题1_2  三位数的反转

//三位数的反转#   include <stdio.h>int main(){int n;scanf("%d",&n);printf("%d%d%d",n%10,n/10%10,n/100);return 0;} //但是这道题需要注意的东西是什么呢? //如果输入的是520? //我们的输出结果是多少呢 025 ?25? //这一点要根据题目给的要求来看 /* 输出025 #   include <stdio.h> int main(){ int n; scanf("%d",&n); printf("%03d",n%10*100+(n/10%10)*10+n/100); return 0; }   输出25   #   include <stdio.h> int main(){ int n; scanf("%d",&n); printf("%d",n%10*100+(n/10%10)*10+n/100); return 0; } */ 


例题1_3  变量交换

//变量交换// 输入两个数交换他们的值输出//方法很多介绍一种很sb 的#   include <stdio.h>int main(){int a,b,temp;scanf("%d%d",&a,&b);temp=a;a=b;b=temp;printf("%d %d",a,b);return 0;} 


例题1_4  鸡兔同笼

//鸡兔同笼//有m个头,n条腿,问鸡几只,兔几只#   include <stdio.h>int main(){int m,n,a,b;  //a表示鸡的只数,b表示兔的只数scanf("%d%d",&m,&n); b=(n-2*m)/2; a=m-b; if(a<0||b<0||m%2!=0){ printf("不存在");  } else { printf("%d %d",a,b); }return 0;} 


例题1_5  三数排序

//三数排序#   include<stdio.h>int main(){int a,b,c,temp;scanf("%d%d%d",&a,&b,&c);if(a<b){temp=a;a=b;b=temp;}if(a<c){temp=a;a=c;c=temp;}if(b<c){temp=b;b=c;c=temp;}printf("%d %d %d",a,b,c);return 0;} 


习题1_1  平均数

//平均数   输入三个整数 输出他们的平均值,保留 三位小数#   include <stdio.h>int main(){double a,b,c,sum=0;scanf("%lf%lf%lf",&a,&b,&c);sum=a+b+c;printf("%.3lf",sum/3);return 0;} 


习题1_2  温度

//温度输入华氏温度输出摄氏温度 保留三位小数  c=5(f-32)/9;# include <stdio.h>int main(){double f,c;scanf("%lf",&f);c=5*(f-32)/9;printf("%.3lf",c);return 0;} 


习题1_3  连续和

//连续和   输入正整数n 输出1+2+3+....+n的值#  include <stdio.h>int main(){int n;scanf("%d",&n);printf("%d",((1+n)*n)/2);return 0;} 


习题1_4  正弦余弦

//正弦和余弦//输入正整数n(n<360)   输出N度的正弦和余弦函数值#   include <stdio.h>#   include <math.h>int main(){int n;scanf("%d",&n);printf("sin %d = %lf, cos %d = %lf",n,sin(n),n,cos(n));return 0;} 


习题1_5  距离

//距离   输入四个浮点数x1,y1,x2,y2 ,求(x1,y1)到(x2,y2)的距离#  include <stdio.h>#  include <math.h>int main(){double x1,y1,x2,y2;scanf("%lf%lf%lf%lf",&x1,&y1,&x2,&y2);double deltx=x1-x2;double delty=y1-y2;double length=sqrt(deltx*deltx+delty*delty);printf("%lf",length);return 0;} 


习题1_6  偶数

//偶数  判断一个数是否为偶数#   include <stdio.h>int main(){int n;if(n%2==0){printf("偶数");}else{printf("不是偶数");}} 


习题1_7  打折

//打折  一件衣服  95元  满300 打85折,输入买几件衣服,,输出付多少钱#   include <stdio.h>int  main(){int n;scanf("%d",&n);if(95*n>=300){printf("%lf",95*n*0.85);}else {printf("%lf",95*n);}return 0;} 


习题1_8  绝对值

//绝对值#   include <stdio.h>#   include <math.h>int  main(){float f;scanf("%f",&f);printf("%f",fabs(f));return 0;} 


习题1_9  三角形

//三角形  ,判断输入的三条变能否输出三角形//输入的三条边均为正整数 #    include <stdio.h> int main(){int a,b,c;scanf("%d%d%d",&a,&b,&c);if(a+b>c){if(a+c>b){if(b+c>a){printf("能够构成三角形");}}}else{printf("不能构成三角形");}return 0;}


习题1_10 年份

//年份  输入一个年份,输出当年是不是瑞年#   include <stdio.h>bool leapyear(int year){if((year%4==0&&year%100!=0)||year%400==0){return 1;}else {return 0;}}int main(){int year;scanf("%d",&year);if(leapyear(year)){printf("是瑞年");}else {printf("不是瑞年");}return 0;} 


0 0
原创粉丝点击