C |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
| #include <stdio.h>
#include <string.h>
/* GetWordLine: возвращает указатель в строке l
на следующее слово с разделителeм из d */
char *GetWordLine(const char *l, const char *d)
{
static const char *next = NULL;
if (!(l && d && *l && *d))
return NULL;
if (!next) {
next = l;
while (strchr(d, *next))
if (!*next++)
return next = NULL;
return next;
}
while (!strchr(d, *next))
if (!*next++)
return next = NULL;
while (strchr(d, *next))
if (!*next++)
return next = NULL;
return next;
} |
|
можно найти начало нужного участка, потом найти за ним следующее слово и применить strncpy, в которую передать разность указателей
Добавлено через 2 минуты
но тебе, по ходу, действительно нужно через scanf делать, так как в задании подразумевается, что разделители не могут быть разными