1.如何将十二小时转化为二十四小时,代码如下:
# include<stdio.h>
int main()//十二小时转化为二十四小时
{
int h = 0;
int m = 0;
char ch = 0;
printf("输入12小时的时间(如10:27A或7:36P)\n");
scanf("%d:%d%c",&h,&m,&ch);
if(ch=='P')
h=h+12;
printf("24小时制表示为%d:%d\n",h,m);
return 0;
}
分析:
这类问题比较常见,比如类似的将大写字母转换为小写字母,将BCD码转化为ASII码等等。这类问题主要考虑各种转换关系。
(1).时间转化
技巧:
十二小时上午时间相同,只需将下午的时间加上十二就可以。需要建立一个区分上午和下午时间的变量。然后判断后用表达式输出结果。
(2).BCD码的转化
技巧;
通常会把一个数转化为二进制或者十进制数。
BCD码 二进制数
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 10000
(3).大小写 的转化
分析;大写字母与小写字母相差32,只需要一个表达式即可。如果是大写就加上32,就可以转化为小写字母。小写刚好相反。