字串排序 string類的使用

2022-05-24 05:30:13 字數 1267 閱讀 6667

最近幫他們做了乙個簡單的c++的題目,以前做過,當時是借鑑的別人的**,現在也忘得差不多了,不過思路還有,現在正好可以再溫習一下。

題目要求如下:

先輸入你要輸入的字串的個數。然後換行輸入該組字串。每個字串以回車結束,每個字串不多於一百個字元。 如果在輸入過程中輸入的乙個字串為「stop」,也結束輸入。 然後將這輸入的該組字串按每個字串的長度,由小到大排序,按排序結果輸出字串。如果存在多個字串長度相同,則按照原始輸入順序輸出。

輸入格式:

字串的個數,以及該組字串。每個字串以『\n』結束。如果輸入字串為「stop」,也結束輸入.

輸出格式:

可能有多組測試資料,對於每組資料, 將輸入的所有字串按長度由小到大排序輸出(如果有「stop」,不輸出「stop」)。

輸入樣例:

4faeruhyytrjh tjytj

hsrthts   hjnshtgfhs

stop

3htrskbns

bsartanjsf tyjndyt

nsr jj jtey

輸出樣例:

faeruhyytrjh tjytj

hsrthts   hjnshtgfhs

htrskbns

nsr jj jtey

bsartanjsf tyjndyt

好,下面先把**貼出來

#includeusing

namespace

std;

void sort(string *a, int n);//

sort函式進行排序 字串指標a 字串數量n

intmain()

else

}sort(p,j);

cout

<<"

"

}goto

begin;

return0;

}/***排序採用氣泡排序法

*/void sort(string *a,int

n) }

}}

這道題的思路其實不是很難,就是在實際操作的時候會遇到一些問題。

1、首先,在輸入的時候,可以迴圈用cin輸入,但是不可以用gets,因為gets無法以空格為結束來終止輸入。

2、自我感覺使用快排會更快一點,但是鑑於現在輸入的資料量的關係,氣泡排序也還可以。

3、在這段**裡我用到了getline,這就是比較偷懶的行為,建議不要過多使用它,多使用cin.getline,會更加靈活多變。

C 字串類String的使用(二)

格式化字串 格式化字串 乙個靜態的format方法,用於將字串資料格式化成指定的格式 string newstr string format str1,str2 console.writeline newstr console.readline format方法將日期格式格式化成指定格式 datet...

String字串的使用

1 字串比較 equals 判斷內容是否相同。compareto 判斷字串的大小關係。comparetoignorecase string int 在比較時忽略字母大小寫。判斷內容與位址是否相同。equalsignorecase 忽略大小寫的情況下判斷內容是否相同。reagionmatches 對字...

String字串類實現

1 class string 2 建構函式string string const char str else string str hell0 3 析構函式string string 4 拷貝構造string string const string other string s1 hello str...