题目链接:https://www.patest.cn/contests/gplt/L1-018
思路:
按照格式化输入读取时和分,判断时是否在(12:00-00:00),再判断应敲多少个dang
注意点:
1.不敲钟时,中间有两个空格,
2.开始准备直接用两个int型数据类型储存hh与mm,后面想用四个字符储存,却忘了改数据类型,提交后一直报运行超时,哎,仔细仔细再仔细!!!!!!!!!!!
3.用两个整形数据也可直接读入时和分,scanf读取数据时会忽略0,结果如下:
想要使输出满足要求,可以用格式化输出,%02d,效果如下:
程序代码
1 #include<stdio.h> 2 int main() 3 { 4 char h1,h2,m1,m2; 5 scanf("%c%c:%c%c",&h1,&h2,&m1,&m2); 6 if(h1=='0'||h1=='1'&&h2=='1'||h1=='1'&&h2=='2'&&m1=='0'&&m2=='0') 7 printf("Only %c%c:%c%c. Too early to Dang.",h1,h2,m1,m2); 8 else 9 { 10 int i,n; 11 n=(h1-48)*10+h2-48; 12 for(i=0;i<n-12;i++) 13 printf("Dang"); 14 if(m1=='0'&&m2=='0') 15 printf("\n"); 16 else 17 printf("Dang\n"); 18 } 19 return 0; 20 }