OJ刷题--1001:贝贝的车牌问题(car)

1.题目

1.1题目描述

广州市车管所为每一辆入户的汽车都发放一块车牌,车牌的号码由六个字符组成,如A99452、B88888等,这个字符串从左边数起的第一个字符为大写英文字母,如A、B、C等,表示这辆车是属于广州市区内的汽车还是郊区的汽车,后面的五位由数字组成。假定以字母A、B、C、D、E、F、G、R、S、T开头的表示是市区车牌,而以其他字母开头的表示郊区车牌。

车管所把这个任务交给贝贝。请你帮贝贝找出所给出的车牌中有多少辆是广州郊区的汽车。

1.2输入

第1行是一个正整数N(1≤N≤105),表示共有N个车牌。接下来的N行,每行是一个车牌号。题目保证给出的车牌不会重复。

1.3输出

只有l行,即广州郊区车牌的数量。

1.4样例输入

3
G54672
Q87680
P77771

1.5样例输出

2

2.题解

2.1思路

Step1.确定题目的的车牌数N
Step2.对字符数组进行初始化为“\0”,每输入一个车牌,就判断该车牌是不是郊区的车,是则计数加一。然后车牌数N减1
Step3.重复Step2,直到车牌数的值为0(所有车牌均进行了检验)

2.2代码

(用C写的,有更好的写法还请大家指出)

#include
#include

char s[10];
int main()
{
    int N;
    int i;
    int cnt = 0;
 
	while ( scanf("%d",&N) != EOF )
	{
		while ( N > 0 )//车牌数为0的时候停止判断
		{
			strcpy(s, "\0");//每输入完一个车牌进行一个初始化 
			scanf("%s",  s);//输入车牌号
			
			if ( ( s[0] >=  'H' && s[0] <= 'Q' ) || ( s[0] >= 'U' && s[0] <= 'Z' ) )
           		cnt++;//判断车牌是否为郊区的车牌,是则计数加一
           		
           	N--;//更新未被判断的车牌数
		}
		printf("%d", cnt);
		
	}
    return 0;
}

你可能感兴趣的:(算法刷题笔记,c语言)