Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 07.11.2016
Сообщений: 7

Неправильный вывод (список выводится задом наперед)

10.04.2017, 17:44. Показов 1441. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Не сильно разбираюсь в списках и хотел бы спросить, заполняю структуру значениями, все хорошо, но вывод на экран почему-то идет задом наперед. Что не так?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
struct tvset // Структура.
{
    char firm[20];
    char color[20];
    int len;
    int price;
 
    void Input(tvset &tv);  // Функция ввода данных в структуру.
    tvset *Next; // Адрес на следующий элемент.
};
 
class List
{
    tvset *Head; // Указатель на начало списка.
public:
    List() :Head(NULL) {}; // Конструктор по умолчанию (Head=NULL).
    ~List(); // Деструктор.
    void Add(tvset &tv);
    void Show();
    void Del(int d);
};
 
void tvset::Input(tvset &tv) // Функция ввода данных.
{
    system("cls");
 
    cout << "Фирма:  ";
    cin.getline(firm, 20);
 
    cout << "Цвет:  ";
    cin.getline(color, 20);
 
    cout << "Диагональ: ";
    cin >> len;
    cin.ignore();
 
    cout << "Цена: ";
    cin >> price;
    cin.ignore();
}
 
void List::Add(tvset &tv) // Добавление новый структуры в список.
{
    tvset *temp = new tvset;
    temp->Next = Head;
 
    strcpy(temp->firm, tv.firm);
    strcpy(temp->color, tv.color);
    temp->len = tv.len;
    temp->price = tv.price;
 
    Head = temp;
}
 
void List::Show() // Вывод списка на экран.
{
    system("cls");
    tvset *temp = Head;
 
    int i = 0;
 
    while (temp != NULL)
    {
        i++;
        cout << "Телевизор №" << i << endl;
        cout << "Фирма: " << temp->firm << endl;
        cout << "Цвет: " <<temp->color << endl;
        cout << "Диагональ:" <<temp->len << endl;
        cout << "Цена: " << temp->price << endl;
 
        temp = temp->Next;
    }
    cout << endl;
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.04.2017, 17:44
Ответы с готовыми решениями:

Вывод строки задом наперед через 1 символ
Мне дано задание: 1)Сначала выведите третий символ этой строки. 2)Во второй строке выведите предпоследний символ этой строки. 3)В...

Число задом наперед
Помогите пожалуйста!!!! Задача. Перевернуть число, введенное с клавиатуры, задом на перед. Например, введено 12345, должны вывести 54321 ...

Вывести строку задом наперед
#include &lt;iostream&gt; using namespace std; int main() { int len; char temp; cin&gt;&gt;len; cin.ignore(); char *str =...

1
с++
1282 / 523 / 225
Регистрация: 15.07.2015
Сообщений: 2,562
10.04.2017, 17:49
пример посмотрите
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#include <iostream>
#include <cstring>
using namespace std;
class List
{
private:
    static const int Max=4;
    string items[Max];
    int top;
public:
    List()
    {
        top = 0;
    }
 
    bool gempty()
    {
        return top==0;
    }
    bool gfull()
    {
        return top==Max;
    }
    void add(const string & strings)    
    {
        if(top<Max)
            items[top++]=strings;
    }
    void visit(void(*pf)(string&)            )
    {
        for(int i=0;i<Max;i++)
            pf(items[i]);
    }
    void out()
    {
        for(int i=0;i<Max;i++)
            cout<<items[i]<<endl;
        cout<<endl;
    }
    void reset()
    {
        top=0;
    }
};
int main(){
 
List listok;
 
string name[ ]=
{
    "Judy Foster", 
    "Angelina Beyck", 
    "Josh Benk", 
    "Denial Zey"
};
if(listok.gempty())
    for(int i=0;!listok.gfull();i++)
        listok.add(name[i]);
 
listok.out();
listok.reset();
 
string str;
 
while(!listok.gfull())
{
    cout<<"Введите имя свое так как лист еще пуст: ";
    getline(cin, str);
    listok.add(str);
}
listok.out();
    return 0;
}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.04.2017, 17:49
Помогаю со студенческими работами здесь

Вывести строку задом наперед
1)Пользователь вводит строку данных программа выводит из нее только цифры. 2)Вывести строку задам на перед. #include...

Написать строку задом наперед
помогите пожалуйста отладить, задача написать строку задом наперед. Работает не правильно, что я не так сделал? Вот мой код: void...

Чтение строки из файла задом наперед
Нужна ваша помощь. Написал прогу которая выполняет определенные действия, но перед этим требуется ввести логин и пароль, если они...

Напечатать заданное слово задом наперед
Составить программу, которая печатает заданное слово задом наперед

Вывести последовательность слов задом наперед
Задание: Дана строка, группу букв, разделенных пробелами (одним или больше) будем считать словами. Вывести последовательность слов задом...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru