【PTA】7 | 您所在的位置:网站首页 › 威海现在封了吗 › 【PTA】7 |
Ignatius现在正在做作业。老师给了他一些文章,并要求他说出每个字母的出现次数。 真的很简单,不是吗? 输入格式:多组输入。每一篇文章只有一行,所有的字母都是小写字母。你只需要计算每个字母的数量,所以不要注意其他字符。文章的长度最多是100000。处理到文件的末尾。 输出格式:对于每一篇文章,你必须说出每封信的出现次数。输出格式类似“x:n”。 输入样例:hello, this is my first acm contest! work hard for hdu acm. 输出样例:a:1 b:0 c:2 d:0 e:2 f:1 g:0 h:2 i:3 j:0 k:0 l:2 m:2 n:1 o:2 p:0 q:0 r:1 s:4 t:4 u:0 v:0 w:0 x:0 y:1 z:0 a:2 b:0 c:1 d:2 e:0 f:1 g:0 h:2 i:0 j:0 k:1 l:0 m:1 n:0 o:2 p:0 q:0 r:3 s:0 t:0 u:1 v:0 w:1 x:0 y:0 z:0 思路: C++ AC 由于输入的是带空格的几行字符串 所以应该用getline没说几个字符串,所以需要while 输入 最后ctrl z 手动退出输入设定一个计数数组 0-26分别对应26个字母,对应关系需要用ascll码来计算。题目里说了字符串是由小写字符构成,故我们需要的ascll码范围是97到122 #include #include using namespace std; int main() { string str=""; //26个字母,所以开30的数组就可以 int cnt[30]; //输入 while(getline(cin,str)) { //每次进行初始化 for(int i=0; i int tmp=str[i]-0;//其实这里就是将字符转化为ascll码 //如果是字母 (这里字母a是97 z是122 ) if(tmp>=97&&tmp cout |
今日新闻 |
推荐新闻 |
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 |