文章

5

粉丝

161

获赞

15

访问

20.2k

头像
字母统计(交大机试)
P1292 上海交通大学机试题
发布于2023年2月7日 10:53
阅读数 3.6k

先看题干要求:统计大写A到大写Z出现在输入的字符串之中的数目。题干不难理解。再看输入输出条件,输入条件为多组输入,可以知道代码主体需要用到while循环输入,再看输出条件以及格式为大写字母,冒号,以及数量。由此敲定输出格式。由于题干没说输入的字符串多长,所以尽量不要定义一个char[?],可以用string。一些杂项了解以后,就要考虑统计个数的问题了。肯定是要从输入的字符串头开始计数,直到循环到字符串长度关于计数可以用一个int数组,一共26项,每一项都是0,代表A-Z初始个数都是0个。读取一个在相应的位置+1.上代码:

#include <bits/stdc++.h>
using namespace std;

int main()
{
	string str;
	int count[26]={0};
	while(cin>>str)
	{
		int len=str.size();
		for(int i=0;i<len;i++)
		{
			if(str[i]>='A'&&str[i]<='Z')
				count[str[i]-'A']++;
		}
		for (int i = 0; i < 26; i++)
            printf("%c:%d\n",'A'+i, count[i]);
	}
	return 0;
}

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发