编辑代码

#include<stdio.h>

int main()
{
	char str[1001],a[1001],b[1001],ch,al[1001],bl[1001];
	int i,n,k=0,j=0,p,q,t;
	scanf("%d", &n);
	scanf("%s", str);
	for (i = 0; i < n; i++)
	{
		ch = str[i];
		if (ch >= 'A' && ch <= 'Z')
		{
			al[k] = i;
			a[k] = str[i];
			k++;
		}
		else if (ch >= '0' && ch <= '9')
		{
			bl[j] = i;
			b[j] = str[i];
			j++;
		}
	}
	for (p = 0; p < k; p++)
	{
		for (q = p + 1; q < k; q++)
		{
			if (a[q] < a[p])
			{
				t = a[q];
				a[q] = a[p];
				a[p] = t;
			}
		}
	}
	for (p = 0; p < j; p++)
	{
		for (q = p + 1; q < j; q++)
		{
			if (b[q] > b[p])
			{
				t = b[q];
				b[q] = b[p];
				b[p] = t;
			}
		}
	}
	for (i=0;i<k;i++)
    {
		str[al[i]] = a[i];
	}
	for(i=0;i<j;i++)
	{
		str[bl[i]]=b[i];
	}
	printf("%s",str);
	return 0;
}