您的位置:首页 > 其它

第13周项目5-统计字符数组中每一个大小写字母出现的次数

2014-11-24 11:38 357 查看
问题及代码:

/* 
*Copyright (c)2014,烟台大学计算机与控制工程学院 
*All rights reserved. 
*文件名称:calculate.cpp 
*作    者:单昕昕 
*完成日期:2014年11月24日 
*版 本 号:v1.0 
* 
*问题描述:定义一个数组统计字符数组中每一个大小写字母出现的次数。
*程序输出:字符数组每一个大小写字母出现的次数。
*/  
#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
    char str[50],m='A',n='a';
    int a[52]= {0};
    int i;
    cout<<"输入字符串:";
    gets(str);
    for(i=0; str[i]!='\0'; ++i)
    {
        if(str[i]>='A'&&str[i]<='Z')  //统计大写字母
            a[str[i]-'A']++;
        if(str[i]>='a'&&str[i]<='z')  //统计小写字母
            a[str[i]-'G']++;  //这句很重要!!!要保证a是从第27个开始计数的!!!
    }
    for(i=0; i<26; ++i)
    {
        cout<<"大写字母"<<char (m+i)<<"出现的次数为:"<<a[i]<<endl;  //强制改变数据类型为char
    }
    cout<<endl;
    for(i=0; i<26; ++i)
    {
        cout<<"小写字母"<<char (n+i)<<"出现的次数为:"<<a[i+26]<<endl;  //a是在Z之后,所以要从第27个输出
    }
    return 0;
}




运行结果:

















知识点总结:

统计字符数组中每一个大小写字母出现的次数。主要是要注意a在Z之后。



学习心得:

一开始a[str[i]-'G']++;这句算的不对,后来在运行的时候发现出现错误然后修改的。

一定要记住a与Z的关系!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: