Удалить два последним слова из строки, в которой слова разделяются одним или несколькими пробелами - C (СИ) (77854)

Формулировка задачи:

работа со строками! задача: удалить два последним слова из строки, в которой слова разделяются одним или несколькими пробелами я писала программу для слов разделяющихся одним пробелом Код C
#include <stdio.h>
#include <string.h>
 
int main(void)
{
      char *s;
      char delimiter = ' ';
      int i;
 
   printf ("vvedite stroku:   ");
   gets(s);       // считываем введенную строку, заносим в string
    {for (i = strlen(s); *(s+i) != delimiter && i; i--);
    s[i]='\0';
    }
    {for (i = strlen(s); *(s+i) != delimiter && i; i--);
    s[i]='\0';
    }
   printf ("stroka bez dvuh slov   ");
   printf("%s\n", s); // выводим полученную строку
   return 0;
   getch();
}
как можно переписать эту задачу с функцией strtok()? или еще как нибудь, подскажите пожалуста

Код к задаче: «Удалить два последним слова из строки, в которой слова разделяются одним или несколькими пробелами - C (СИ) (77854)»

textual
    
short count = 0;
char delimiter = ' ';
char *c;
for (c = s + strlen(s)-2; c != s; c--)
        if(*c == delimiter && *(c+1) != delimiter)
            if(++count == 2) break;
 
    *c = '\0';
Эта работа вам не подошла?

Вы всегда можете заказать любую учебную работу у наших авторов от 20 руб.

8   голосов, оценка 4.125 из 5


СДЕЛАЙТЕ РЕПОСТ