Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.05.2021, 14:15   #1
nonameii3ii
Пользователь
 
Регистрация: 16.04.2021
Сообщений: 73
Восклицание В односвязном списке вставить после каждой * символ _

Вот то пробовал я , он просто заменяет,буду очень благодарен помощи
Код:
#include <iostream>
#include <clocale>
#include <string>
#include <conio.h>
using namespace std;
struct List
{
char a;
List *next;
};
List *Init()
{
List *beg = new List;
char ch;
cout << "Введите элементы: ";
cin >> beg->a;
ch = beg->a;
beg->next = NULL;
if (ch != '.')
{
List *p = beg;
while (ch != '.')
{
p->next = new List;
p = p->next;
cin >> p->a;
ch = p->a;
p->next = NULL;
}
}
return beg;
}
void Print(List *b)
{
cout << "После изменения: ";
while (b)
{
if (b->a=='*')
b->a = '_';
cout << b->a;
b = b->next;
}
}
int main()
{
setlocale(LC_ALL, "rus");
List *beg = NULL, *p;
beg = Init();
p = beg;
Print(p);
_getch();
}

Последний раз редактировалось BDA; 20.05.2021 в 18:22.
nonameii3ii вне форума Ответить с цитированием
Старый 21.05.2021, 05:16   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,430
По умолчанию

Код:
void Print(List *b)
{
    cout << "После изменения: ";
    while (b)
    {
        if (b->a == '*')
        {
            List *t = new List;
            t->a = '_';
            t->next = b->next;
            b->next = t;
        }
        cout << b->a;
        b = b->next;
    }
}
И неплохо бы перед выходом из программы удалить созданный список, а то так и привыкните
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 21.05.2021, 09:51   #3
nonameii3ii
Пользователь
 
Регистрация: 16.04.2021
Сообщений: 73
По умолчанию

BDA, Спасибо вам ,но я уже сам дошел до решения,все равно спасибо,только к вам вопросик как в двухсвязном списке удалить последний элемент?
nonameii3ii вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Функция в односвязном списке SanyaSid Общие вопросы C/C++ 2 27.04.2017 13:15
Удаление узлов в односвязном списке Niklitel Помощь студентам 1 01.03.2014 14:41
Последовательный поиск в односвязном списке vo0vka Помощь студентам 2 01.12.2012 23:49
Вставить пробел до и после каждой цифры текста LittleStudent Помощь студентам 2 14.04.2011 22:48
Поиск в односвязном списке DOJ Общие вопросы C/C++ 6 04.10.2009 13:34