您的位置:首页 > 其它

图片整理

2015-08-29 10:29 246 查看
Lily上课时使用字母数字图片教小朋友们学习英语单词,每次都需要把这些图片按照大小(ASCII码值从小到大)排列收好。请大家给Lily帮忙,通过C语言解决。
输入Lily使用的图片包括"A"到"Z"、"a"到"z"、"0"到"9"。输入字母或数字个数不超过1024。
输出Lily的所有图片按照从小到大的顺序输出
样例输入Ihave1nose2hands10fingers
样例输出0112Iaadeeefghhinnnorsssv
/*HashTable占用内存*/
[code]#include<iostream>
#include<string>
#include<mem.h>
using namespace std;
int main()
{
string s;
char ch;
getline(cin,s);
int i=0,tablesize=256;
int Hashtable[tablesize];
memset(Hashtable,0,sizeof(Hashtable));
while(s[i]!='\0')
{
Hashtable[s[i++]]++;
}
for(int i=0;i<256;i++)
{
while(Hashtable[i]>=1)
{
cout<<char(i);
--Hashtable[i];
}
}

/*当然可以用排序了额*/int cmp(const void* p1, const void* p2)
{
return *(char*)p1 - *(char*)p2;
}
int main()
{
char s[1024];
gets(s);
qsort(s,strlen(s),sizeof(char),cmp);
puts(s);

}
[/code]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: