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

Добавить в элементы список и вывести их на экран - C++

Восстановить пароль Регистрация
 
Tattoquardas
0 / 0 / 0
Регистрация: 22.10.2011
Сообщений: 21
22.09.2012, 20:37     Добавить в элементы список и вывести их на экран #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
#include <iostream>
 
using namespace std;
 
struct list
            {
            int data;
            list *next;
            };
            
list *add (list *head)
 
{
if (head!=NULL)
{
   list *temp=head;
   while (temp->next!=NULL)
   {
            temp=temp->next;
    }
    cout<<"Enter the elements: "<<endl;
    temp->next=new list;
    cin>>temp->next->data;
    temp->next->next=NULL;
    return head;
 }
else
{
head=new list;
cout<<"Enter the elements: "<<endl;
cin >> head->data;
head->next=NULL;
return head;
};
};
     
list *printt(list *head) {
     list *newhead=head;
     while (head!=NULL){
           cout<<head->data<<endl;
           head=head->next;
           };
     return newhead;
};
     
int main() {
     list *head=NULL;
     int n;
     cin>>n;
     int i=0;
     while (i!=n) {
           add(head);
           i++;
           };
    printt(head);
     system("pause");
     return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.09.2012, 20:37     Добавить в элементы список и вывести их на экран
Посмотрите здесь:

C++ вывести список содержащий только положительные элементы
C++ Вывести список на экран
Односвязный список (за первым вхождением элемента с заданным значением z добавить все элементы списка В) C++
Классы в C++ Вывести на экран список граждан мужского пола с высшим образованием C++
Добавить элементы из текстового файла в связный список C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
igorrr37
 Аватар для igorrr37
1593 / 1221 / 118
Регистрация: 21.12.2010
Сообщений: 1,868
Записей в блоге: 7
22.09.2012, 20:56     Добавить в элементы список и вывести их на экран #2
list* add (list*& head)
Nixy
ComfyMobile
 Аватар для Nixy
399 / 280 / 8
Регистрация: 24.07.2012
Сообщений: 916
22.09.2012, 21:01     Добавить в элементы список и вывести их на экран #3
во 1 для того чтоб код был читабельный есть в редакторе спецальный раздел
по поводу программы
C++
1
2
3
4
5
list *printt(list *head)
...
list *head=NULL;
...
add(head);
у тебя на вход идет указатель ,внутри функции ты думаешь что меняешь его , а на самом деле нет
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
22.09.2012, 21:01     Добавить в элементы список и вывести их на экран #4
C++
1
2
3
4
5
6
7
8
9
viod printt(list *head) 
{
     list *newhead = head;
     while (newhead != NULL)
    {
           cout << newhead -> data << endl;
           newhead = newhead -> next;
     }
}
Nixy
ComfyMobile
 Аватар для Nixy
399 / 280 / 8
Регистрация: 24.07.2012
Сообщений: 916
22.09.2012, 21:09     Добавить в элементы список и вывести их на экран #5
Цитата Сообщение от alsav22 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
viod printt(list *head) 
{
     list *newhead = head;
     while (newhead != NULL)
    {
           cout << newhead -> data << endl;
           newhead = newhead -> next;
     }
}
проблемы это не решит у него на входе NULL и add не меняет этого
Tattoquardas
0 / 0 / 0
Регистрация: 22.10.2011
Сообщений: 21
22.09.2012, 21:13  [ТС]     Добавить в элементы список и вывести их на экран #6
Спасибо, list* add (list*& head) написала, теперь работает!
Nixy
ComfyMobile
 Аватар для Nixy
399 / 280 / 8
Регистрация: 24.07.2012
Сообщений: 916
22.09.2012, 21:16     Добавить в элементы список и вывести их на экран #7
Цитата Сообщение от Tattoquardas Посмотреть сообщение
Спасибо, list* add (list*& head) написала, теперь работает!
а понятно почему?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.09.2012, 22:05     Добавить в элементы список и вывести их на экран
Еще ссылки по теме:

Ввести элементы двумерного массива с клавы С++.Нужно вывести его на экран в виде таблицы, в конце каждой строки надо вывести самый большой элемент C++
Вывести на экран список файлов и каталогов в текущей директории C++
C++ Как вывести на экран список в 4 столбца

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

Или воспользуйтесь поиском по форуму:
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
22.09.2012, 22:05     Добавить в элементы список и вывести их на экран #8
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
#include <iostream>
using namespace std;
 
struct list
{
    int data;
    list *next;
};
            
list *add (list *head)
 {
   list *add = new list;
   add -> next = head;
   cout << "Enter the elements: "<<endl;
   cin >> add -> data;
   head = add;
   
   return head;
}
     
void printt(list *head) 
{
     list *newhead = head;
     while (newhead != NULL)
     {
           cout << newhead -> data << endl;
           newhead = newhead -> next;
     }
}
 
void deletelist(list *head)
{
    list *temp;
    while (head != NULL)
    {
        temp = head -> next;
        delete head;
        head = temp;
    }
}    
 
int main() 
{
     list *head = NULL;
     int n;
     cin >> n;
     int i = 0;
     while (i != n) 
     {
           head = add(head);
           i++;
     }
    
    printt(head);
 
    deletelist(head);
    
    system("pause");
    return 0;
}
Yandex
Объявления
22.09.2012, 22:05     Добавить в элементы список и вывести их на экран
Ответ Создать тему
Опции темы

Текущее время: 02:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru