1、输入由一串字符,由数字和英文字母组成,求输出左边为数字,右边为英文字母。
解题思路:利用快速排序的一趟快排过程。
#include<stio.h> #include<string.h> int main(){ int i,j,len; int low,high; char str[1000]; while(scanf("%s",str+1)!=EOF){ len=strlen(str+1); low=0; high=len; str[0]='*'; while(low<high){ while((!('0'<=str[high]&&str[high]<='9'))&&low<high){ high--; } str[low]=str[high]; while((('0'<=str[low]&&str[low]<='9'))&&low<high){ low++; } str[high]=str[low]; } str[low]='*'; printf("%s\n",str); } return 0; }