ps:WA了三次。。。第一次头脑有点乱,很麻烦的分几种情况讨论,第二次发现,只要分别算出时针和分针的角度,然后一减就行,却忽略了哪个大的问题,第三次加上了绝对值,就好了。。就是以后double型比较最好还是加个.0 比较好
代码:
#include "stdio.h" #include "math.h" double h1(double h,double m,double s); double m1(double m,double s); int main(){ int T,i; double h,m,s,k,hh,mm; scanf("%d",&T); while(T--){ scanf("%lf%lf%lf",&h,&m,&s); if(h>=12) h=h-12; mm=(m+s/60)*6; hh=(h+m/60+s/3600)*30; k=fabs(hh-mm); if(k>=180.0) k=360.0-k; printf("%d\n",(int )k); } return 0; } double m1(double m,double s){ s=s*0.1; m=m*6; return s+m; } double h1(double h,double m,double s){ s=s/120; m=m/2; h=h*30; return s+m+h; }