『算法学习笔记』2nd day. 分支程序设计

发布时间:2016-12-6 16:13:07 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"『算法学习笔记』2nd day. 分支程序设计",主要涉及到『算法学习笔记』2nd day. 分支程序设计方面的内容,对于『算法学习笔记』2nd day. 分支程序设计感兴趣的同学可以参考一下。

例题1-3 1 /* 2 Function: 解决机兔同笼问题 3 鸡和兔总数量为n,总腿数为m。输入n,m 解出鸡和兔的数量。 4 sample input: 14 32 5 sample output: 12 2 6 sample input: 12 2 7 sample output: No answer 8 */ 9 10 #include<stdio.h> 11 int main() 12 { 13 int a,b,n,m; 14 scanf("%d%d", &n, &m); 15 a=(m-2*n)/2; 16 b=n-a; 17 if(m%2==1||a<0||b<0) 18 printf("No answer\n"); 19 else 20 printf("%d %d\n", a,b); 21 return 0; 22 } 例题1-4 /** 2 Function: swap the three input numbers and output them increasingly. 3 Sample input: 20 7 33 4 Sample output: 7 20 33 5 **/ 6 #include<stdio.h> 7 int main() 8 { 9 int a,b,c; 10 scanf("%d%d%d", &a, &b, &c); 11 #if 0 12 else if(b<=c &&a<=c) printf("%d %d %d\n", b,a,c); 13 if(a<=b&&b<=c) printf("%d %d %d\n", a, b, c); 14 else if(b>=c &&a<=c) printf("%d %d %d\n", a,c,b); 15 else if(b>=c &&a>=c) printf("%d %d %d\n", c,a,b); 16 else if(a>=b &&b>=c) printf("%d %d %d\n", c,b,a); 17 else if(b<=c &&c<=a) printf("%d %d %d\n", b,c,a); 18 #endif 19 20 #if 0 21 if(a<=b&&b<=c) printf("%d %d %d\n", a, b, c); 22 else if(b>=c &&a<=c) printf("%d %d %d\n", a,c,b); 23 else if(b>=c &&a>=c) printf("%d %d %d\n", c,a,b); 24 else if(a>=b &&b>=c) printf("%d %d %d\n", c,b,a); 25 else if(b<=c &&c<=a) printf("%d %d %d\n", b,c,a); 26 //事实上可以直接用else 解决最后一种情况 27 else printf("%d %d %d\n",b,c,a); 28 #endif 29 30 #if 0 31 //也可以直接比较交换 这里用的是先 ab 再bc 再ac的顺序 注意这样可能会出错 !!! 32 //因为比较时候可能会漏掉换位后的ab 33 int temp; 34 if(a>b){temp=a;a=b;b=temp;} 35 if(b>c){temp=b;b=c;c=temp;} 36 if(a>c){temp=a;a=c;c=temp;} 37 printf("%d %d %d\n",a,b,c); 38 #endif 39 40 #if 0 41 //也可以直接比较交换 先ab 再ac 再bc 42 int temp; 43 if(a>b){temp=a;a=b;b=temp;} 44 if(a>c){temp=a;a=c;c=temp;} 45 if(b>c){temp=b;b=c;c=temp;} 46 printf("%d %d %d\n",a,b,c); 47 #endif 48 49 #if 1 50 //可以通过变量存储中间结果,存储中间结果 求出最大值,最小值,也就有来中间值 极为实用! 51 int x,y,z; 52 x=a;if(b>x) x=b; if(c>x)x=c; 53 y=a;if(b<y) y=b ;if(c<y)y=c; 54 z=a+b+c-x-y; 55 printf("%d %d %d\n",y,z,x); 56 #endif 57 return 0; 58 }

上一篇:Android 如何监听返回键
下一篇:使用jboss as 7 final布署项目

相关文章

相关评论