第1个回答 2007-01-01
可以好好利用 strtok 函数:
#include <stdio.h>
#include <string.h>
int main() {
char input[99],
copyOfInput[99],
*token;
size_t positionOfLongest = 0,
lengthOfLongest = 0;
gets(input);
strcpy(copyOfInput, input);
for (token = strtok(input, " \t"); token; token = strtok(NULL, " \t"))
if (strlen(token) > lengthOfLongest) {
lengthOfLongest = strlen(token);
positionOfLongest = strstr(copyOfInput, token) - copyOfInput;
}
printf("\nPosition of the longest string: %d.\n", positionOfLongest + 1);
}