提交记录 #207
提交时间:2024-11-12 20:51:57
语言:c
状态:Accepted
编译情况:编译成功
固定测试点#1:
固定测试点#2:
固定测试点#3:
固定测试点#4:
额外测试点#4800:
37【字符】自编车号
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#define MAX_LENGTH 5
// 判断自编号牌是否合法
int is_valid_plate(char *p) {
int l = strlen(p);
int upper_count = 0;
int digit_count = 0;
// 检查长度是否为5
if (l != MAX_LENGTH) {
return 0;
}
// 检查最后一位是否为数字
if (!isdigit(p[4])) {
return 0;
}
// 检查前四位是否有至少两位为大写英文字母,且不包含I和O
for (int i = 0; i < 4; i++) {
if (isupper(p[i]) && p[i] != 'I' && p[i] != 'O') {
upper_count++;
} else if (isdigit(p[i])) {
digit_count++;
} else {
return 0;
}
}
// 检查是否有至少两位为大写英文字母
if (upper_count < 2) {
return 0;
}
return 1;
}
int main() {
char p[MAX_LENGTH + 1];
// 读取自编号牌
scanf("%s", p);
// 判断自编号牌是否合法
if (is_valid_plate(p)) {
printf("ok.\n");
} else {
printf("no.\n");
}
return 0;
}