當前位置:成語大全網 - 新華字典 - C++輸出三個字符竄要求按字母由小到大或由大到小輸出

C++輸出三個字符竄要求按字母由小到大或由大到小輸出

這裏有兩段代碼,都是可行的。

代碼是按從小到大排序的,輸出順序或者排序的順序樓主可以根據需要自己修改。

代碼1:

#include <iostream>

#include <cstring>

/*包含這個頭文件是因為要用到函數strcmp(const char*, const char*),

它是用來按字典序比較兩個字符數組大小的。若前者大,返回值為正;

若後者大,返回值為負;若相等,返回值為0.可以理解為前者減後者做差,

這樣好記.

strcpy(const char*, const char*),將後面壹個數組的內容復制給前面壹個

*/

using namespace std;

const int Len = 100;

void swap_ch(char *a, char *b)

{

char temp[Len];

strcpy(temp,a);

strcpy(a,b);

strcpy(b,temp);

}

int main()

{

char a[Len],b[Len],c[Len];

cin >> a >> b >> c;

if(strcmp(a,b)>0)

swap_ch(a,b);

if(strcmp(a,c)>0)

swap_ch(a,c);

if(strcmp(b,c)>0)

swap_ch(b,c);

cout << a << endl << b << endl << c;

return 0;

}

代碼2:

#include <iostream>

#include <string>

/*下面這個是用C++裏的類string做的

string類型的對象可以直接用>,<,=來

根據字典序判斷字符串大小。這裏涉及

到重載的概念,樓主可以上網了解壹下*/

using namespace std;

void swap_str(string x, string y)

{

string temp;

temp=x;

x=y;

y=temp;

}

int main()

{

string a,b,c;

cin >> a >> b >> c;

if(a>b) swap_str(a,b);

if(a>c) swap_str(a,c);

if(b>c) swap_str(b,c);

cout << a << endl << b << endl << c;

return 0;

}

望樓主采納