题目描述
编写一个程序,将输入字符串中的字符按如下规则排序。
规则 1 :英文字母从 A 到 Z 排列,不区分大小写。
如,输入: Type 输出: epTy
规则 2 :同一个英文字母的大小写同时存在时,按照输入顺序排列。
如,输入: BabA 输出: aABb
规则 3 :非英文字母的其它字符保持原来的位置。
如,输入: By?e 输出: Be?y
输入描述:
输入字符串
输出描述:
输出字符串
c代码:
#include <stdio.h>
#include <string.h>
int main(void)
{
char str[1000]={0};
while(gets(str))
{
int i,j,k=0;
char temp[1000]={0};
for(i=0;i<26;i++)
{
for(j=0;j<strlen(str);j++)
{
if(str[j] == 'a'+i || str[j] == 'A'+i)
temp[k++] = str[j];
}
}
k=0;
for(i=0;i<strlen(str);i++)
{
if((str[i]>='a'&&str[i]<='z')||(str[i]>='A'&&str[i]<='Z'))
str[i] = temp[k++];
}
printf("%s\n",str);
}
return 0;
}