Разделить все символы заданной строки пробелами - C (СИ)

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

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

Можете помочь написать алгоритм решения сей задачи) Дана строка. Разделить все символы заданной строки пробелами.
Листинг программы
  1. #include <stdio.h>
  2. #include <string.h>
  3. main() {
  4. char str[80];
  5. char str1[80];
  6. int i,n;
  7. printf ("vvedite slovo");
  8. scanf ("%s",str);
  9. n=strlen(str);
  10. str1[0]=str[0];
  11. for(i=1;i<=n;i++){
  12. str1[i*2+1]=" ";
  13. str1[i*2]=str[i];
  14. }
  15. printf("str1[%s]",str1);
  16. }
Можете подкоректировать что тут не так?

Решение задачи: «Разделить все символы заданной строки пробелами»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <string.h>
  3. #include <locale.h>
  4. #define N 81
  5. #define M 162
  6. int main(void){
  7.  setlocale(LC_ALL, "Ru");
  8.  char str[N];
  9.     char strl[M]="";
  10.     int i,l,j=0;
  11.     fgets(str,N,stdin);
  12.     l=strlen(str);
  13.     for(i=0;i<l;i++){if(str[i]!=' '){strl[j]=str[i];j++;strl[j]=' ';j++;}
  14.     }
  15.      printf("%s\n",strl);          
  16.      return(0);
  17. }

Объяснение кода листинга программы

  1. Подключение необходимых библиотек для работы с файлами и строками.
  2. Определение размеров массивов строк.
  3. Установка локали на русскую.
  4. Ввод строки с помощью функции fgets().
  5. Вычисление длины строки с помощью функции strlen().
  6. Пройтись по всем символам в строке.
  7. Если символ не является пробелом, то добавить его в новую строку.
  8. После каждого не пробельного символа добавлять пробел.
  9. Вывести полученную строку с помощью функции printf().
  10. Вернуть 0, чтобы указать, что программа успешно завершилась.

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


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

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

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

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы