C语言3个字母从大到小排序问题求解释!!

C语言3个字母从大到小排序问题求解释!!,第1张

#include "stdioh"

void main()

{

    int a, b, c;

    int tmp;

    printf("输入三个数abc:\n");

    scanf("%d %d %d", &a, &b, &c);

    //scanf("%c%c%c", &a, &b, &c);//(%c是字符,%d才是整数)

    if (a>b)//如果a比b大,那么就将ab的值交换,让小数在前面

    {

        tmp = a;

        a = b;

        b = tmp;

    }

    if (a>c)//如果a比c大,那么就把ac的值交换,让小数在前面

    {

        tmp = a;

        a = c;

        c = tmp;

    }

    if (b>c)//比较下bc哪个大,交换两者的值,让小数在前面

    {

        tmp = b;

        b = c;

        c = tmp;

    }

    printf("%d %d %d\n", a, b, c);//综上这是一个从小到大排列的程序,不是从大到

    system("pause");

    return;

}

//你这么想,世界杯看过吧,亚军和季军要互相打下看谁能拿到第二名,一样的道理。三个人想知道谁的乒乓球技术最好,那么三个人轮流打比赛。先A:B,赢的人就进入下一轮是吧,假如A水平比较厉害,那么A和C比试下,看下谁赢,,如果还是A赢了,那A就是最厉害的,可是谁第二呢。B和C还没切磋过,那就B:C,看下谁赢了,如果B赢了,那B就是第二厉害的。这个程序的顺序和比赛是一回事,就是把最厉害的那个人挑出来起,然后输了的人就接着跟别人比赛。

Easy!

import javautilArrayList;

import javautilCollections;

public class Main {

/

@param args

the command line arguments

/

public static void main(String[] args) {

String target = "John Bill Peter ";

ArrayList<String> list = new ArrayList<String>();

for (String temp : targetsplit(" ")) {

listadd(temp);

}

Collectionssort(list);

for(int i = listsize(); i > 0; i--){

Systemoutprintln(listget(i-1) + " ");

}

}

}

----------------

Peter

John

Bill

#include<iostream>

#include<cstdlib>

#include<string>

const int MAX_SIZE=50;

using namespace std;

int compare(const voida,const voidb)

{

chara1=(char)a;

charb1=(char)b;

return strcmp(a,b);

}

void sort(chars,int n)

{

qsort(s,n,sizeof(char)MAX_SIZE,compare);

}

int main()

{

int n,i;

cin>>n;

chars=new char[n];

for(i=0;i<n;i++)

{

s[i]=new char[MAX_SIZE];

cin>>s[i];

}

sort(s,n);

for(i=0;i<n;i++)

cin<<s[i]<<endl;

return 0;

}

/

输入

THE

PRICE

OFBREAD

IS

125

PER

POUND

输出

ABC

DDEEE

EFHIINO

OP

125

PPR

RRSTU

/

#include<stdioh>

#include<stringh>

#include<stdlibh>

char

str[]={"THE

PRICE

OFBREAD

IS

125

PER

POUND"};

char

buffer[100],sign[100];

int

cmp(const

void

a,const

void

b)

{

return

(char)a-(char)b;

}

void

init()

{

int

i,j=0;

for(i=0;str[i]!='\0';i++)

{

if((str[i]>='a'&&str[i]<='z')||(str[i]>='A'&&str[i]<='Z'))

buffer[j++]=str[i];

}

buffer[j]='\0';

return

;

}

int

main()

{

int

i=0,j=0;

init();

qsort(buffer,strlen(buffer),sizeof(char),cmp);

//先把字母捡出来排序,然后再把排好序的字母还回去

//puts(buffer);

for(i=0;str[i]!='\0';i++)

{

if((str[i]>='a'&&str[i]<='z')||(str[i]>='A'&&str[i]<='Z'))

str[i]=buffer[j++];

}

puts(str);

return

0;

}

#include <stdioh>

#include <stdlibh>

//申明链表

typedef struct node

{

char num;

struct node next;

}list;

void Bubble_sort(list L);//链表的冒泡排序

void Dis_list(list L);//遍历单链表

int main()

{

//建表

list r,s,p;

int n=26;//存储数据的个数

s=NULL;

for(int i='Z';i>='A';i--)

{

r=(list )malloc(sizeof(list));

r->num = i;

if(!s){s=r;p=s;}

p->next=r;

p=r;

}

p->next=NULL;

printf("排序前:\t");

Dis_list(s);

//排序

Bubble_sort(s);

printf("排序后:\t");

Dis_list(s);

return 0;

}

void Dis_list(list L)

{

list r;

r=L;

while(r!=NULL)

{

printf("%c\t",r->num);

r=r->next;

}

printf("\n");

}

void Bubble_sort(list L)

{

list r,s;

char temp;

for(r=L;r;r=r->next)

{

for(s=r;s;s=s->next)

{

if(r->num>s->num)

{

temp=r->num;

r->num=s->num;

s->num=temp;

}

}

}

}

以上就是关于C语言3个字母从大到小排序问题求解释!!全部的内容,包括:C语言3个字母从大到小排序问题求解释!!、JAVA编写程序,对英文单词按照字母顺序进行排序(升序or降序)、C++按字母顺序排序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10133249.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存