-
题目描述:
-
如图,给定任意时刻,求时针和分针的夹角(劣弧所对应的角)。
-
输入:
-
输入包含多组测试数据,每组测试数据由一个按hh:mm表示的时刻组成。
-
输出:
-
对于每组测试数据,输出一个浮点数,代表时针和分针的夹角(劣弧对应的角),用角度表示,结果保留两位小数。
-
样例输入:
-
03:00 14:45
-
样例输出:
-
90.00 172.50
AC代码:
#include<stdio.h>
#include<math.h>
int main(void) {
int h;
float m;
while(scanf("%d:%f", &h, &m) != EOF) { //这里很酷,直接读入了hour和minute,不用多做处理了
float i_angle, h_angle, m_angle, result;
h %= 12;
i_angle = h * 30; //initial
h_angle = (m / 60) * 30; // hour
m_angle = (m / 60) * 360;//minute
result = fabs(m_angle - (i_angle + h_angle));
//printf("m_a:%0.2f i_a:%.2f h_a:%.2f result:%.2f\n", m_angle, i_angle, h_angle, result);
if(result >= 180) {
result = 360 - result;
}
printf("%.2f\n", result);
}
return 0;
}
/**************************************************************
Problem: 1553
User: wusuopuBUPT
Language: C
Result: Accepted
Time:0 ms
Memory:912 kb
****************************************************************/