题目4-ASCII码排序

来源:互联网 发布:帝国cms怎么样 编辑:程序博客网 时间:2024/06/05 21:49

ASCII码排序

时间限制:3000 ms  |  内存限制:65535 KB
难度:2
描述
输入三个字符(可以重复)后,按各字符的ASCII码从小到大的顺序输出这三个字符。
输入
第一行输入一个数N,表示有N组测试数据。后面的N行输入多组数据,每组输入数据都是占一行,有三个字符组成,之间无空格。
输出
对于每组输入数据,输出一行,字符中间用一个空格分开。
样例输入
3qweasdzxc
样例输出
e q wa d sc x z

代码:

#include<stdio.h>void sort(char c[],int n);void printChar(char *c);int main(){    int k,i,j;    scanf("%d ",&k);    char arr[k][3];    for(i=0;i<k;i++)        scanf("%s",arr[i]);    for(i=0;i<k;i++)    {        sort(arr[i],3);        printChar(arr[i]);    }    return 0;}void sort(char c[],int n){    void sort1(char *c1,char *c2);    int i,j,k;    for(i=0;i<n-1;i++)    {        k=i;        for(j=i+1;j<n;j++)            if(c[k]>c[j])                k=j;        if(k!=i)            sort1(&c[i],&c[k]);    }}void sort1(char *c1,char *c2){    char c_temp;    c_temp=*c1;    *c1=*c2;    *c2=c_temp;}void printChar(char *c){    int i=0;    for(i=0;i<3;i++)        printf("%c ",c[i]);    printf("\n");}


0 0
原创粉丝点击