7 32 說反話 加強版(20 分)

2022-01-26 05:24:48 字數 1109 閱讀 3318

7-32 說反話-加強版(20 分)

給定一句英語,要求你編寫程式,將句中所有單詞的順序顛倒輸出。

測試輸入包含乙個測試用例,在一行內給出總長度不超過500 000的字串。字串由若干單詞和若干空格組成,其中單詞是由英文本母(大小寫有區分)組成的字串,單詞之間用若干個空格分開。

每個測試用例的輸出佔一行,輸出倒序後的句子,並且保證單詞間只有1個空格。

hello world   here i come
come i here world hello
#include//標準c,沒有用c++的string,這樣首先讀取字串就是個問題了 

#define max 500000

//先處理字串,刪除多餘的空格,形成新字串

//hello world here i come

int main ()

else if (count > 0) else if (flag)

} //刪除多餘的空格,將目標字串放入 t 中

//這裡的count起了什麼作用呢?

//如遇到 hello,都存入t中,遇到第乙個空格,此時count=0,flag=1,把空格存入t,count=1

//world後面的空格 ,第二個空格,遇到空格繼續讀下乙個字元即,continue,起乙個跳過作用

//開頭就是空格咋辦?啥也不操作

count = 0;

int j;

for (i-=1; i>=0; i--) else if (t[i]==' ' && count > 0) //遇到空格就輸出單詞

printf(" ");

count = 0;

}} // 還剩最後乙個單詞沒輸出,因為最後乙個單詞可能前方無空格 ,只完成了count++,但是沒有遇到 空格,那麼邏輯是一樣的

for (j=i+1; j<=i+count; j++) //i,j的變數作用範圍非常的有用

//這麼看來字元陣列其實非常的方便,不必非要使用c++的string類 ,continue用來跳過也是極好的

return 0;

}

7 32 說反話 加強版 20 分 ( )

題目 給定一句英語,要求你編寫程式,將句中所有單詞的順序顛倒輸出。測試輸入包含乙個測試用例,在一行內給出總長度不超過500 000的字串。字串由若干單詞和若干空格組成,其中單詞是由英文本母 大小寫有區分 組成的字串,單詞之間用若干個空格分開。每個測試用例的輸出佔一行,輸出倒序後的句子,並且保證單詞間...

7 32 說反話 加強版 20分

給定一句英語,要求你編寫程式,將句中所有單詞的順序顛倒輸出。測試輸入包含乙個測試用例,在一行內給出總長度不超過500 000的字串。字串由若干單詞和若干空格組成,其中單詞是由英文本母 大小寫有區分 組成的字串,單詞之間用若干個空格分開。每個測試用例的輸出佔一行,輸出倒序後的句子,並且保證單詞間只有1...

7 32 說反話 加強版 20分

題目 給定一句英語,本題要求編寫程式,將句中所有單詞的順序顛倒輸出。輸入格式 試輸入包含乙個測試用例,在一行內給出總長度不超過500 000的字串。字串由若干單詞和若干空格組成,其中單詞是由英文本母 大小寫有區分 組成的字串,單詞之間用若干個空格分開。輸出格式 每個測試用例的輸出佔一行,輸出倒序後的...