题目1066 字符串排序 九度Online Judge

来源:互联网 发布:如何用阿里云os系统 编辑:程序博客网 时间:2024/06/11 00:35
题目描述:

 输入一个长度不超过20的字符串,对所输入的字符串,按照ASCII码的大小从小到大进行排序,请输出排序后的结果

输入:

 一个字符串,其长度n<=20

输出:

 输入样例可能有多组,对于每组测试样例,

按照ASCII码的大小对输入的字符串从小到大进行排序,输出排序后的结果
样例输入:
dcba
样例输出:
abcd
#include <stdio.h>#include <string.h>#include <stdlib.h>//using namespace std;int main(){//char s[200];char ch;int i=0,j,k;bool flag;char *s=(char *)malloc(sizeof(char));while ((scanf("%s",s))!=EOF){flag=1;for (i=strlen(s)-1;i>0;i--){for (j=0;j<i;j++){if (s[j]>s[j+1]){flag=0;ch=s[j];s[j]=s[j+1];s[j+1]=ch;}}}if(flag)break;//for (i=0;i<strlen(s);i++)//{//cout<<s[i];//}//cout<<s<<endl;printf("%s\n",s);}return 1;}

#include<stdio.h> #include<stdlib.h> #include<string.h> int main() {     char *a=(char *)malloc(sizeof(char));     int len,i,j,temp,flag;     while(scanf("%s",a)!=EOF)     {         len=strlen(a);         for(i=0;i<len;i++)        {             flag=1;             for(j=0;j<len-1-i;j++)             {                 if(a[j]>a[j+1])                 {                     flag=0;                     temp=a[j];                     a[j]=a[j+1];                     a[j+1]=temp;                 }             }             if(flag)                 break;         }         printf("%s\n",a);                 }        return 0;         } /**************************************************************    Problem: 1066    User: Carvin    Language: C++    Result: Accepted    Time:100 ms    Memory:1020 kb****************************************************************/


0 0