九度OJ 1553
http://ac.jobdu.com/problem.php?pid=1553
/* 时针和分针位mod12,之和再mod6计算大角度, 时针和分针的位置关系分4种情况讨论 然后加上时针小角度的转动。 */ #include<stdio.h> int main() { int h,m; while(scanf("%d%*c%d",&h,&m)!=EOF) { int a=h%12,b=m%12; float k=(m+0.0)/2; float q=(a+0.0)/12-(m*11.0)/(60*12); if(q>0) { if(q<0.5) //时针超过分针但小于180度 { printf("%.2f\n",30*a-5.5*m); } else //时针超过分针但大于180度 { printf("%.2f\n",360-30*a+5.5*m); } } else { if(-q<0.5) //分针超过时针但小于180度 { printf("%.2f\n",5.5*m-30*a); } else //分针超过时针但大于180度 { printf("%.2f\n",360-5.5*m+30*a); } } } return 0; }