寫一個函數,輸人一行字符,將此字符串中最長的單詞輸出


寫一個函數,輸人一行字符,將此字符串中最長的單詞輸出

題目解析:

單詞以空格進行分隔,因此尋找空格出現的位置即為關鍵,每次從單詞的起始到空格出現的位置即為一個單詞,此時計算單詞的長度,如果比當前最大的還長,就進行跟新最長單詞信息,當整個字符串遍歷完成,word即保存最長字符串。

代碼示例:

#include<stdio.h>
#include<string.h>

void LongestWord(char str[], char word[])
{
	int max_len = 0;
	int len = 0;
	int i = 0;
	while(str[i] != '\0')
	{
		if(str[i] == ' ')
		{
			str[i] = '\0';
			len = strlen(str);
			if(len > max_len)
			{
				max_len  = len;
				strcpy(word, str);
				str = str + len + 1;
			}
		}
		i++;
	}
}

int main()
{
	char line[100] = {0};
	char word[100] = {0};
	printf("input one line:\n");
	gets(line);

	LongestWord(line, word);

	printf("The longest word is : %s\n", word);
	return 0;
}

運行結果:

寫一個函數,輸人一行字符,將此字符串中最長的單詞輸出


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM