0

我需要有关打印出字符串中间单词的代码的帮助。

第一个例子:

输入:我的名字是亚历克斯

输出:name 或 is <-- 是中间

第二个例子:

输入:你好。我在编码方面需要帮助。

输出:帮助 <-- 中间词

希望有人可以帮助我。我会尽力跟进。

4

2 回答 2

3

这是一个想法:

  1. 将字符串拆分为单词
  2. 现在你知道有多少个单词,决定如何处理偶数大小写
  3. 打印决定的单词

您可以strtok()用于拆分,也许假设一个“典型”句子不超过 50 个单词,每个单词不超过 16 个字符。只是为了简化代码。

于 2013-01-23T14:59:09.080 回答
2

完整代码:

#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;
于 2013-01-23T15:04:31.237 回答