Удаление лишних пробелов - C (СИ)
Формулировка задачи:
Приветствую.
Все с той же задачей, нужно написать функцию, которая удаляет лишние пробелы из строки. С заданием я справился, но теперь, на основе этой функции Заранее благодарен за помощь.
нужно написать два кода, один с применением индексированных массивов, второй с применением указателей
. Вроде как там нужно заменить несколько строк, но у меня что-то не получилось. Мой код функции:#include<stdio.h> #include<conio.h> void main() { int s=0; printf("Input your text:\n"); while ((s = getchar())==' ') ; putchar(s); prob(s); printf("Press any key to exit..."); _getch(); } int prob(char s) { int d; d = 0; while ((s = getchar()) != EOF) { if (s == ' ') d++; if (d <= 1 ) putchar (s); if (s != ' '&&d > 1) putchar (s); if (s != ' ') d=0; } return 0; }
Решение задачи: «Удаление лишних пробелов»
textual
Листинг программы
// ... #include <string.h> // ... int main() { char text1[256], text2[256]; printf("text: "); fgets(text1, sizeof(text1), stdin); strcpy(text2, text1); printf("func1: %s", func1(text1)); printf("func2: %s", func2(text2)); return 0; }
Объяснение кода листинга программы
- Включается библиотека string.h, которая содержит функции для работы со строками.
- Создается массив text1 и text2 типа char с размером 256 символов.
- Выводится сообщение
text:
и считывается строка с помощью функции fgets в массив text1. - С помощью функции strcpy массив text2 копируется из text1.
- Вызывается функция func1, передавая в качестве аргумента text1, и выводится результат.
- Вызывается функция func2, передавая в качестве аргумента text2, и выводится результат.
- Программа завершается, возвращая 0.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д