【第二次机考错题】北京市机动车网上自选牌号的正误鉴别

编程入门 行业动态 更新时间:2024-10-15 20:23:17

【第二次机考错题】北京市机动车网上自选牌号的<a href=https://www.elefans.com/category/jswz/34/1675866.html style=正误鉴别"/>

【第二次机考错题】北京市机动车网上自选牌号的正误鉴别

2009年3月9日开始,北京市交通管理局正式推出北京市机动车网上自选牌号业务,极大的方便了新购车的市民自选中意的新车牌照号的需求。根据国家制定的机动车号牌号码标准,一辆机动车的号牌号码由七位字符组成,前两位是号牌号码发牌机关代码,后五位是具体号牌号码。主管部门在具体操作上又出台了以下规定:机动车所有人网上选号的号牌号码发牌机关代码为“京N”或者“京Y”。后面的五位号牌号码的最后一位必须为数字,其余四位有且必须有两位为英文字母(但字母I和O不可用),也就是说英文字母有且只有两个,不能多也不能少。例如:京NAB999、京NC9D99、京NE99F9、京N9GH99、京N9J9K9、京N99LM9、京YNB999、京YP9D99、京YZ99F9号码都是正确的。你能据此编写一个程序来检测给定的号牌号码是否符合上述规定吗?

输入格式:
第一行为一个整数T(0<T<=100),代表测试用例组数,后边是T组测试用例,每个用例占一行,为含有号牌号码最后五位的字符内容(不会包含空格、回车等空白符)。

输出格式:
为T行,每行对应输入的测试用例,如果检测认为测试用例符合规定则输出“yes:”并后跟对应的号牌号码(如果号牌中字母为小写字母,请转换为大写字母输出),如果检测认为不符合规定则输出“no.”(不含双引号本身)。注意,如果号牌中包含有非法字符(也就是不是字母也不是数字的字符),也认为不符合规定。

输入样例:
2
K00a1
aBc12
输出样例:
yes:K00A1
no.

#include<stdio.h>
int main(){int t;scanf("%d",&t);char s[5];int yes,cnt;while(t--){yes=1;cnt=0;scanf("%s",s);//oi特判 for(int i=0;i<5;i++){if(s[i]=='o'||s[i]=='i'||s[i]=='O'||s[i]=='I'){yes=0;break;}}//末位特判if(s[4]>'9'||s[4]<'0') yes=0;//字母数量统计for(int i=0;i<4;i++){if(s[i]>='a'&&s[i]<='z'){s[i]+='A'-'a';cnt++;}else if(s[i]>='A'&&s[i]<='Z') cnt++;else if(s[i]>='0'&&s[i]<='9'){;}else{//非法字符 yes=0;break;}} if(cnt!=2)  yes=0;//输出结果if(yes) printf("yes:%s\n",s);else printf("no.\n"); }
}

更多推荐

【第二次机考错题】北京市机动车网上自选牌号的正误鉴别

本文发布于:2024-03-05 01:05:54,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1710903.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:正误   北京市   牌号   机动车   机考

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!