文章

19

粉丝

0

获赞

121

访问

2.4k

头像
字符串排序2 C语言题解:依旧qsort稳定排序
P1255 北京大学机试题
发布于2026年3月14日 15:28
阅读数 171

#include<stdio.h>
#include<stdlib.h>
#include<ctype.h>
#include<string.h>

int compare(const void* a, const void* b){
	char aa=*(const char*)a;
	char bb=*(const char*)b;
	aa = tolower(aa);
	bb = tolower(bb);
	return aa-bb;
}

int main(){
	char arr[100]={0},brr[100]={0};
	while(gets(arr)!=NULL){
		int num=0;
		for(int i=0; i<strlen(arr); i++){
			if(isalpha(arr[i]))
				brr[num++]=arr[i];
		}

		qsort(brr, strlen(brr), sizeof(char), compare);
		int x=0;
		for(int i=0; i<strlen(arr); i++){
			if(isalpha(arr[i]))
				printf("%c", brr[x++]);
			else
				printf("%c", arr[i]);
		}
			
		printf("\n");
	}
	return 0;
}

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发