任务:输入小时和分钟,按hh:mm形式输出,低于两位数的前面补0
代码
/*
*Copyright ?2017,CSDN学院
*All rights reserved.
*文件名称:main.c
*作 者:袁生
*完成日期:2017年10月19日
*版 本 号:v1.0
*问题描述:输入小时和分钟,按hh:mm形式输出,低于两位数的前面补0.
*/
#include <stdio.h>
#include <math.h>
#define pi 3.1415926
int main()
{
int hh,mm;
scanf("%d %d",&hh,&mm);
//方法一(没必要,hh和mm没有关系)
if(hh>=10)
{
if(mm>=10)
printf("%d:%d",hh,mm);
else
printf("%d:0%d",hh,mm);
}
else if(mm>=10)
printf("0%d:%d",hh,mm);
else
printf("0%d:0%d",hh,mm);
//方法二:
/*if(hh<10)
printf("0");
printf("%d:",hh);
if(mm<10)
printf("0");
printf("%d",mm);*/
//方法三:
//printf("%02d:%02d",hh,mm);
return 0;
}
心得
方法一中的hh≥10与mm≥10没有包含与被包含的关系,将小时和分钟联系到了一起,使用多个if语句来嵌套,显得有些牵强和啰嗦。将两个变量分别对待,就有了方法二,在其基础上简化,便成了方法三。以后构思程序注意变量间的联系。