admin管理员组文章数量:1794759
C语言学习笔记——计算时钟的夹角
C语言学习笔记——计算时钟的夹角 题目内容:
钟面上的时针和分针之间的夹角总是在 0 ~180之间 ( 包括 0 和180 ) 。举例来说,在十二点的时候两针之间的夹角为 0 ,而在六点的时候夹角为180 ,在三点的时候为90 。本题要解决的是计算 12:00 到 11:59 之间任意一个时间的夹角。
输入格式:每组测试数据包含两个数字:第一个数字代表小时 ( 大于 0 小于等于 12) ,第二个数字代表分 ( 在区间 [0, 59] 上 ) 。
输出格式:对应每组测试数据,用常用格式显示时间以及这个时候时针和分针间的最小夹角,精确到小数点后一位。输出格式如下所示。 再看一看,想一想:是否可以不用if 语句,只使用 printf 函数来简化你的程序?
输入样例:12 0
输出样例:At 12:00 the angle is 0.0 degrees.
程序代码: #include <stdio.h> #include <stdlib.h> #include <math.h> main(){ int a,b;//a:小时数,b:分钟数 float t1,t2,ans;//t1:时针的角度,t2:分针的角度,ans:夹角 //printf("Please input the time\\n(12:34 for example)\\n");//如果需要输入提示,删去“*//” scanf("%d %d",&a,&b); //将时间转为12小时制(时钟只有12个格子),保证角度差不会超过360° if (a>=12){ t1=(float)a-12; }else { t1=(float)a; } t2=(float)b*6; t1=t1*30+(float)b*0.5; ans=fabs(t1-t2); if(ans>180) ans=360-ans;//若夹角大于180°,取小角 printf("At %d:%02d the angle is %.1f degrees.",a,b,ans); return 0; } 转载请注明出处版权声明:本文标题:C语言学习笔记——计算时钟的夹角 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1686626245a87915.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论