Написать функцию вставки в строку S подстроки S1 с позиции n, используя указатели - C (СИ)

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

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

Помогите, пожалуйста написать функцию вставки в строку S подстроки S1 с позиции n, используя указатели. Язык Си, компилятор турбо си. Пожалуйста очень нужно!

Решение задачи: «Написать функцию вставки в строку S подстроки S1 с позиции n, используя указатели»

textual
Листинг программы
#include <stdio.h>
#include <string.h>
 
void ins(char *s,char *s1,int t)
{
    char tmp[255];
    int i,j;
    for (i = t,j = 0;i<255;i++,j++) {
        tmp[j] = s[i];
    }
    for (i = t,j = 0;i<255;i++,j++)
        s[i] = s1[j];
    for (i = (t+strlen(s1)),j = 0;i<255;i++,j++)
        s[i] = tmp[j];
}
 
 
int main()
{
    char s[255], s1[80];
    for (int i = 0;i<255;i++)
        s[i] = '\0';
        
    int n=5;
    printf("введите s\n");
    scanf("%s", s);
    printf("введите s1\n");
    scanf("%s1 ",s1);
    printf("введите n\n");
    fscanf(stdin,"%d", &n);
    
    ins(s,s1,(n-1));
    
    printf("%s\n",s);
    
    return 0;
}

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

  1. В функции ins происходит вставка подстроки s1 в строку s с позиции t.
  2. В функции main создается пустая строка s, в которую затем считывается исходная строка.
  3. Также в функции main создается подстрока s1, в которую затем считывается подстрока для вставки.
  4. Пользователю предлагается ввести номер позиции для вставки подстроки.
  5. Функция ins вызывает функцию scanf для ввода строки s и s1, а также целого числа n.
  6. Функция ins использует массив tmp для сохранения символов строки s, начиная с позиции t.
  7. Затем функция ins заменяет символы в строке s, начиная с позиции t, на символы подстроки s1.
  8. После этого функция ins заменяет символы в строке s, начиная с позиции t+strlen(s1), на символы из массива tmp.
  9. В конце функции main выводится измененная строка s.
  10. Возвращаемое значение функции main равно 0, что означает успешное выполнение программы.

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


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

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

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