Заменить символы в строке и вывести полученную строку - C (СИ)

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

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

2. Дана символьная строка. Заменить все символы '+' на символы '-' кроме второго и вывести полученную строку. "Кроме второго", не получается ввести в код, помогите
#include <stdio.h>
#include <string.h>
#include <stdlib.h> 
#include <time.h>
 
int main() 
{
     char str[20];
     int n=0,i,j;
     //puts("vvedite stroku\n");
     gets(str);
     for(i = 0; i < strlen(str); i++)
         if(str[i]=='+')
             str[i]='-';
             for(i = 0; i < strlen(str); i++)
             printf("%c",str[i]);
        return 0;
}

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

textual
Листинг программы
#include <stdio.h>
 int main(void) 
{
    char str[255]="gfgfg+gfgf+ fggf+";
    int n=0, i=0, j, k=0;
    //puts("vvedite stroku\n");
    for(i = 0; str[i]; i++)
    {
        if(str[i]=='+')
        {
            ++k;
            if(k<2)
            {
                str[i]='-';
                
            }else break;
            
        }
    }
    ++i;
    for(; str[i]; i++)
    {
        if(str[i]=='+')
        {
            str[i]='-';
        }
    }
             printf("%s\n", str);
     return 0;
}

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

В этом коде заменяются все плюсы на минусы, если они не являются первым или вторым символом в строке. Вот список действий:

  1. Вводится строка gfgfg+gfgf+ fggf+.
  2. Инициализируется переменная n (количество замен), i (индекс текущего символа) и k (счетчик числа плюсов).
  3. Цикл проходит по каждому символу строки.
  4. Если символ равен плюсу, увеличивается значение k.
  5. Если k меньше 2, заменяется текущий плюс на минус.
  6. Если k равно 2, заменяется только первый плюс на минус.
  7. Цикл проходит по каждому символу строки, начиная с индекса i, и заменяет все плюсы на минусы.
  8. Выводится итоговая строка -gfgfg-gfgf- fggf-.

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


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

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

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