文章
47
粉丝
109
获赞
8
访问
28.4k
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int sortstring(const void* elem1, const void* elem2) {
return strcmp((char *) elem1,(char *)elem2);
}
int main() {
char s[25] = {0};//代表输入的是单个字符,而不是字符串
scanf("%s",&s);
int len = strlen(s);
qsort(s,len,sizeof(s[0]),sortstring);
for (int i = 0; i < len; i++) {
printf("%c", s[i]);//分别输出字符串中的单个字符
}
return 0;
}
第二种
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int sort(const void* elem1, const void* elem2) {
return *(char*)elem1 - *(char*)elem2;//单个字符从大到小
//return *(char*)elem2 - *(char*)elem1;//单个字符从大到小
//字符串用strcmp
}
int main() {
char s[20] = {0};//注意初始化
//三种字符串输入都可以
while (gets(s)!=NULL) {
int len = strlen(s);
qsort(s,len,sizeof(s[0]),sort);
puts(s);
}
return 0;
}
登录后发布评论
暂无评论,来抢沙发