Форум программистов, компьютерный форум CyberForum.ru

Стек как линейный список, вывести на печать два последних элемента - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Массив. Определите сумму всех чисел http://www.cyberforum.ru/cpp-beginners/thread901516.html
Данный двумерный массив. Определите сумму всех чисел.
C++ Работа с матрицами. Найти минимальный среди максимальных элементов ее столбцов Дана матрица размерности M на N. Найти минимальный среди максимальных элементов ее столбцов. http://www.cyberforum.ru/cpp-beginners/thread901513.html
С паскаля в С++ C++
{task array6} const maxSize=100; type Tarr=array of integer; var m:Tarr; i,n,a,b:integer; begin repeat
Циклы. Вычислить сумму C++
C++ Найти в каждой строке наибольший элемент и поменять его местами с элементом главной диагонали http://www.cyberforum.ru/cpp-beginners/thread901497.html
Данная целочисленных квадратная матрица. Найти в каждой строке наибольший элемент и поменять его местами с элементом главной диагонали.
C++ Определить количество вхождений каждого слова в заданную строку заданная строка. определить количество вхождения каждого слова в заданую строку. помогите,а то не могу понять почему не правельно считает... #include <iostream.h> #include <windows.h> #include <fstream.h> #include <cstring.h> #include <conio.h> подробнее

Показать сообщение отдельно
xvost2yxa
0 / 0 / 0
Регистрация: 07.05.2013
Сообщений: 15
14.06.2013, 11:07     Стек как линейный список, вывести на печать два последних элемента
Здравствуйте, нужна программа - стек как линейный список, вывести на печать два последних элемента. Получилось только чтобы выводилось два первых. Заранее спасибо)
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
#include <stdio.h>
#include <locale.h>
#include <Windows.h>
 
//структура для описания списка
struct Node
{
    char data[100];     //данные
    Node *next;         //указатель на следующий элемент
};
 
int main()
{
    setlocale(LC_ALL, "Russian");
    Node *head = NULL;
    int n;
    //ввод количества
    printf("Введите количество элементов, которое необходимо добавить в стек: "); scanf("%d", &n);
    if(n > 0)   //проверка корректности ввода
    {
        for(int i = 0; i < n; i++)
        {
            printf("Введите элемент: ");
            char tmp[100]; fflush(stdin);   //очистка буфера
            gets(tmp);                      //ввод данных
            Node *node = new Node;          //создаём новый элемент списка
            strcpy(node->data, tmp);        //копируем в него данные
            node->next = head;              //нужно добавить в начало, поэтому следующий для этого узла будет бывший первый
            head = node;                    //сдвигаем указатель на начало списка
        }
        Node *temp = head;
        printf("%s\n", temp->data); //выводим элемент
        temp = temp->next;          //переходим к следующему
        printf("%s\n", temp->data);
 
    }
    else
    {
        puts("В стеке должен быть хотя-бы один элемент!");      //сообщаем об ошибочном вводе
    }
    system("pause");
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 10:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru