问题标题: 酷町堂:3969 字符排序与计数

0
0
已解决
曲天歌
曲天歌
高级光能
高级光能
#include<iostream>
#include<string>
using namespace std;
int a[10010];
int main()
{
    string s;
    cin>>s;
    for(int i=0;i<s.size();i++)
    {
        a[s[i]]++;
    }
    for(int i='A';i<='Z';i++)
    {
        if(a[i]!=0){ 
            for(int j=1;j<=a[i];j++)
                cout<<char(i);
        } 
        cout<<a[i]<<endl;      
    }
    for(int i='a';i<='z';i++)
    {
        if(a[i]!=0){ 
            for(int j=1;j<=a[i];j++)
            {
                cout<<char(i);
            }
        } 
        cout<<a[i]<<endl;
    } 
     return 0;
}
输出:0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
XX2
Y1
Z1
aa2
bb2
cc2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0

我特?怎么输出这么多0!

大佬们,帮帮本童鞋吧!改改错


0
已采纳
高子健
高子健
新手天翼
新手天翼

抱歉改错了

for(int i='a';i<='z';i++)

 

{

 

if(a[i]!=0){

 

for(int j=1;j<=a[i];j++)

 

{

 

cout<<char(i);

 

}

 

}

 

cout<<a[i]<<endl;

 

}

改成

    for(int i='a';i<='z';i++)


    {


        if(a[i]!=0){ 


        for(int j=1;j<=a[i];j++)


        {


                cout<<char(i);


        }


      cout<<a[i]<<endl;


  } 


  } 

0
赵泰来
赵泰来
高级光能
高级光能

会了

@曲天歌 你错了两处:

a[s[i]]++;

改成

if(s[i]>='A'&&s[i]<='Z'||s[i]>='a'&&s[i]<='z'){

    int t=s[i]-0;

    a[t]++;

}

两个cout<<a[i]<<endl;

全部改成

if(a[i]!=0){

    cout<<a[i]<<endl;

}

0
高子健
高子健
新手天翼
新手天翼

交给我了

有两个地方

一:

for(int i='A';i<='Z';i++)

 

{

 

if(a[i]!=0){

 

for(int j=1;j<=a[i];j++)

 

cout<<char(i);

 

}

 

cout<<a[i]<<endl;

 

}

把两个输出改一下

for(int i='A';i<='Z';i++)

 

{

 

if(a[i]!=0){

 

for(int j=1;j<=a[i];j++)

 

cout<<char(i);

cout<<a[i]<<endl;

}

 

}

第2个:

for(int i='a';i<='z';i++)

 

{

 

if(a[i]!=0){

 

for(int j=1;j<=a[i];j++)

 

{

 

cout<<char(i);

 

}

 

}

 

cout<<a[i]<<endl;

 

}

知道怎么改了吗??????

望采纳

0
曲天歌
曲天歌
高级光能
高级光能

@高子健 

 

还是不对,输出后面有0了

XX2
Y1
Z1
aa2
bb2
cc2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0

#include<iostream>
#include<string>
using namespace std;
int a[10010];
int main()
{
    string s;
    cin>>s;
    for(int i=0;i<s.size();i++)
    {
        a[s[i]]++;
    }
    for(int i='A';i<='Z';i++)
    {
        if(a[i]!=0){
            for(int j=1;j<=a[i];j++)
                cout<<char(i);
            cout<<a[i]<<endl;
        }
    }
    for(int i='a';i<='z';i++)
    {
        if(a[i]!=0){
            for(int j=1;j<=a[i];j++)
            {
                cout<<char(i);
            }
        }
        cout<<a[i]<<endl;
    }
     return 0;
}

 

0
高子健
高子健
新手天翼
新手天翼

for(int i='a';i<='z';i++)

 

{

 

if(a[i]!=0){

 

for(int j=1;j<=a[i];j++)

 

{

 

cout<<char(i);

 

}

 

}

 

cout<<a[i]<<endl;

 

}

改成

for(int i='a';i<='z';i++)

 

{

 

if(a[i]!=0){

 

for(int j=1;j<=a[i];j++)

 

{

cout<<char(i);

cout<<a[i]<<endl;

}

 

}

 

 

0
曲天歌
曲天歌
高级光能
高级光能

还不对,现在输出
XX2
Y1
Z1
a2
a2
b2
b2
c2
c2

0
赵泰来
赵泰来
高级光能
高级光能

a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
a2
a2
b2
b2
c2
c2
2
a2
a2
b2
b2
c2
c2
2
a2
a2
b2
b2
c2
c2
2
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
a2
a2
b2
b2
c2
c2
0
我输出的是这个

同求

#include<iostream>
#include<string>
using namespace std;
int a[10010];
int main(){
    string s;
    cin>>s;
    for(int i=0;i<s.size();i++){
        a[s[i]]++;
    }
    for(int i='A';i<='Z';i++){
        for(int i='a';i<='z';i++){
            if(a[i]!=0){
                for(int j=1;j<=a[i];j++){
                    cout<<char(i);
                    cout<<a[i]<<endl;
                }
            }
        }
    }
    for(int i='a';i<='z';i++){
        for(int i='a';i<='z';i++){
            if(a[i]!=0){
                for(int j=1;j<=a[i];j++){
                    cout<<char(i);
                    cout<<a[i]<<endl;

                }
            }
        }
        cout<<a[i]<<endl;
    }
    return 0;
}

 

我要回答