我需要有关打印出字符串中间单词的代码的帮助。
第一个例子:
输入:我的名字是亚历克斯
输出:name 或 is <-- 是中间
第二个例子:
输入:你好。我在编码方面需要帮助。
输出:帮助 <-- 中间词
希望有人可以帮助我。我会尽力跟进。
这是一个想法:
您可以strtok()
用于拆分,也许假设一个“典型”句子不超过 50 个单词,每个单词不超过 16 个字符。只是为了简化代码。
完整代码:
#include <stdio.h>
#include<string.h>
#include<conio.h>
int main(){
char str[] = "good men to come to the aid of their country";
char delims[] = " ";
char *result;
char word[100][100];
int loop=1;
result = strtok(str, delims );
strcpy(word[0],result);
while( result != NULL ) {
loop++;
strcpy(word[loop],result);
result = strtok( NULL, delims );
}
int mid=loop/2-1;
// to print the middle element
printf("word is %s \n",word[mid+1]);
getch();
return 0;