题目链接
http://t.csdn.cn/DifhX
#include<iostream>
#include<algorithm>
using namespace std;
struct g {
string name;
int cnt;
};
bool cmp(g a,g b){
return a.name<b.name;
}
int main() {
string s;
g q[101];
int f=0;
while(cin>>s){
int k=0;
for(int i=0;i<s.size();i++){
if(s[i]!=0){
int d=1;
for(int j=i+1;j<s.size();j++){
if(s[i]==s[j]){
d++;
s[j]=0;
}
}
q[k].cnt=d;
q[k].name=s[i];
k++;
}
}
sort(q,q+k,cmp);
if(f!=0)cout<<endl;
for(int i=0;i<k;i++)cout<<q[i].name<<" "<<q[i].cnt<<endl;
f++;
}
return 0;
}
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
typedef struct
{
char name;
int cnt;
}g;
int cmp(const g *a, const g *b)
{
return a->name > b->name;
}
int main()
{
char s[100];
g q[101];
int f=0,len;
while(1)
{
scanf("%s",s);
len=strlen(s);
if(len==1)break;
int k=0;
for(int i=0; i<len; i++)
{
if(s[i]!=0)
{
int d=1;
for(int j=i+1; j<len; j++)
{
if(s[i]==s[j])
{
d++;
s[j]=0;
}
}
q[k].cnt=d;
q[k].name=s[i];
k++;
}
}
//sort(q,q+k,cmp);
qsort(q,k,sizeof(g),cmp);
if(f!=0)printf("\n");
for(int i=0; i<k; i++)
//cout<<q[i].name<<" "<<q[i].cnt<<endl;
printf("%c %d\n",q[i].name,q[i].cnt);
f++;
}
return 0;
}
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
typedef struct
{
char name;
int cnt;
}g;
int cmp (const void * a, const void * b)
{
return ( *(int*)a - *(int*)b );
}
int main()
{
char s[100];
g q[101];
int f=0,len;
while(1)
{
scanf("%s",s);
len=strlen(s);
if(len==1)break;
int k=0;
for(int i=0; i<len; i++)
{
if(s[i]!=0)
{
int d=1;
for(int j=i+1; j<len; j++)
{
if(s[i]==s[j])
{
d++;
s[j]=0;
}
}
q[k].cnt=d;
q[k].name=s[i];
k++;
}
}
qsort(q,k,sizeof(g),cmp);
if(f!=0)printf("\n");
for(int i=0; i<k; i++)
printf("%c %d\n",q[i].name,q[i].cnt);
f++;
}
return 0;
}