题目链接
https://www.nowcoder.com/pat/6/problem/4040
代码
#include<stdio.h>
#define MAX 60
int main() {
char a[MAX];
char b[MAX];
char c[MAX];
char d[MAX];
char answer[2];
int i;
int t = 0;
int hour;
scanf("%s%s%s%s", a,b,c,d);
for(i=0; i<MAX; i++) {
if(t == 0) {
if(a[i] == b[i] && a[i] >= 'A' && a[i] <= 'Z') {
answer[t++] = a[i];
}
} else if(t == 1) {
if(a[i] == b[i] && ((a[i] >= 'A' && a[i] <= 'Z') || (a[i] >= '0' && a[i] <= '9'))) {
answer[t++] = a[i];
}
} else {
break;
}
}
for(i=0; i<MAX; i++)
if(c[i] == d[i] && c[i] >= 'A' && c[i] <= 'z') break;
//处理星期
switch(answer[0]) {
case 'A':
printf("MON "); break;
case 'B':
printf("TUE "); break;
case 'C':
printf("WED "); break;
case 'D':
printf("THU "); break;
case 'E':
printf("FRI "); break;
case 'F':
printf("SAT "); break;
case 'G':
printf("SUN "); break;
}
//处理小时
if(answer[1] >= '0' && answer[1] <= '9') {
hour = answer[1] - '0';
printf("0%d:", hour);
}else if(answer[1] >= 'A' && answer[1] <= 'Z')
printf("%d:", answer[1]-'A'+10);
//处理分钟
if(i < 10) printf("0%d", i);
else printf("%d", i);
}
本文介绍了一个使用C语言编写的程序,该程序能够解析输入的字符串来确定特定的时间信息,包括星期几和具体的时间点。通过对输入字符串进行比较,程序能够识别出表示星期的字符并将其转换为完整的星期名称,同时也能解析出小时数和通过两个字符串中相同字符的位置来确定分钟数。
358

被折叠的 条评论
为什么被折叠?



