Задание такое:
Вставить заданный символ в заданный ряд через каждые пару символов.
Мне говорят, что здесь путаница с кучей. Код полностью рабочий и соответствует заданию
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
#define MAXSTR 128
char* InputSymbol(char* Stri, char symbol);
int main() {
char s[MAXSTR], symbol;
printf("Input = \n");
gets(s, MAXSTR);
printf("Input symbol = \n");
scanf_s("%c", &symbol);
printf("%s\n", InputSymbol(s, symbol));
_getch();
return 0;
}
char* InputSymbol(char* Stri, char symbol)
{
int n = strlen(Stri), i = 0, j = 0, k = 0;
char* r = (char*)malloc(2 * n);
for (i = 0; i < n; i++)
{
r[j++] = Stri[i];
k++;
if (k == 2)
{
r[j++] = symbol;
k = 0;
}
r[j] = '\0';
}
return r;
}