自我解析:由於輸入描述中給出了字串的最大長度,因此用最簡單粗暴的方法,申請乙個大小為5000的字串陣列。
但是scanf遇到回車、空格、tab均會自動在字串後新增'\0',根據使用strlen函式獲取字串長度的原理,選擇通過gets函式獲取字串(能夠將回車作為'\0'存入陣列末端,接受之前輸入的所有字元),再從陣列末端開始遍歷直到字串開頭或者第乙個空格(' ')停止。
注:strlen所作的是乙個計數器的工作,它從記憶體的某個位置(可以是字串開頭,中間某個位置,甚至是某個不確定的記憶體區域)開始掃瞄,直到碰到第乙個字串結束符'\0'為止,然後返回計數器值(長度不包含'\0')。
#include #include int main()
else
}printf("%d\n", count);
return 0;
}
字串最後乙個單詞的長度
計算字串最後乙個單詞的長度,單詞以空格隔開。輸入描述 一行字串。輸出描述 整數n,最後乙個單詞的長度。輸入例子 hello world輸出例子 5 乙個比較有用的c 的輸入輸出控制類,c 引入了ostringstream istringstream stringstream這三個類,要使用他們建立物...
字串最後乙個單詞的長度
link 時間限制 1秒 空間限制 32768k 計算字串最後乙個單詞的長度,單詞以空格隔開。一行字串,非空,長度小於5000。整數n,最後乙個單詞的長度。示例1 hello world 5 ac code include include includeusing namespace std cha...
字串最後乙個單詞的長度
計算字串最後乙個單詞的長度,單詞以空格隔開。輸入描述 一行字串,非空,長度小於5000。輸出描述 整數n,最後乙個單詞的長度。示例1輸入 hello world輸出5 fgets 函式 雖然用 gets 時有空格也可以直接輸入,但是 gets 有乙個非常大的缺陷,即它不檢查預留儲存區是否能夠容納實際...