最近幫他們做了乙個簡單的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
好,下面先把**貼出來
#includeusingnamespace
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...