Из слов исходной строки удалить все символы, стоящие на нечетных местах - C (СИ)

Узнай цену своей работы

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

Дана строка, содержащая слова, разделенные одним или несколькими разделительными символами (пробелами, табуляторами), в начале строки и в конце строки также могут находиться разделительные символы. Сформировать новую строку, в которой из слов исходной строки удалены все символы, стоящие на нечетных местах. Слова в новой строке разделяются одним пробелом. В начале строки и в конце строки не должно быть разделительных символов.

Решение задачи: «Из слов исходной строки удалить все символы, стоящие на нечетных местах»

textual
Листинг программы
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
 
int main () {
 char *token, buf[81],*separators = "\t,.:;!? ";
 strcpy (buf,"   mama\tmila,   ramu milom! Mila Ramu ne   razbila.");
 token = strtok(buf, separators);
 while(token != NULL) {
  for (int i=0; i<strlen(token); i+=2) printf ("%c",token[i]); 
   //если 0 - "чётная" позиция и отсчёт символов в слове ведётся с нуля, иначе немного поменять цикл
  token = strtok(NULL, separators);
  if (token) printf (" "); 
 }
 getchar(); return 0;
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4 из 5
Похожие ответы