首页 > C/C++语言 > C/C++基本语法 > C++编的关于统计字符串中元素
2010
10-22

C++编的关于统计字符串中元素

我刚学,题目是:输入一行字符串,求出该串中
     大写字母的个数、小写字母的个数、
     数字的个数,及剩下的其他字符的个数。

#include<iostream>
using namespace std;
void main()
{
    char c;
 int i,j,n,m;
 cin>>c;
 while(cin>>c);
{
 if(‘a’<=c&&’z'>=c)
 i++;
 else if(‘A’<=c&&’Z'>=c)
 j++; 
 else if(’0′<=c&&’9′>=c)
 n++;
    else m++;
   
}
   cout<<i<<j<<n<<m<<endl;

请问一下上面错在哪里了,为什么我输入字符串后没反应?如果错的很离谱的话,请大家帮我写一个完整的把!非常感谢~

 


C++编的关于统计字符串中元素》有 2 条评论

  1. whos 说:

    1. 变量 i 、j、n、m没有初始化,应初始化为0

    2. while(cin>>c);语句中的分号说明循环体为空,等于while(cin>>c){ ;},也就是个死循环
    3. 输出语句count应放到循环体中
     
    代码如下:
    #include<iostream>
    using namespace std;
    void main()
    {
        char c;
     int i=0,j=0,n=0,m=0;
     while(cin>>c)
    {
     if(‘a’<=c&&’z'>=c)
      i++;
     else if(‘A’<=c&&’Z'>=c)
      j++;
     else if(’0′<=c&&’9′>=c)
      n++;
     else
      m++;
     cout<<i<<j<<n<<m<<endl; 

    }
  2. 小印 说:

    非常感谢!!

留下一个回复