Дана строка. Преобразовать ее, удалив каждый символ (*) и повторив каждый символ, отличный от (*) просто си - вопрос №2722703

07.01.18
2 ответа

Ответы

Из условия не совсем понятно, что точно требуется. Если правильно вас понял, то так:изображение из вопроса
Если не так и есть вопросы, пишите в личку.
07.01.18
void task_home(char* s, char c, int maxbuf){
char* i, *a, *b;
int n;

for(a = b = s; *a; *a = *b){
if(*a != c)
++a;
++b;
}

n = (int)(a — s);
if((n + n) >= maxbuf)
return;

i = a + n;
*i-- = *a--;
while(a >= s){
*i-- = *a;
*i-- = *a--;
}
}


int main(void){
char s[64] = "**A*B*C*D*E*F*** F*I*N|*";
puts(s);
task_home(s, '*', sizeof(s)-1);
puts(s);
return 0;
}
08.01.18
Посмотреть всех экспертов из раздела Технологии > C/C++
Пользуйтесь нашим приложением Доступно на Google Play Загрузите в App Store