Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Модифицирование Функции 
:(
    Опции темы
Acousticboy
Дата 17.6.2008, 22:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 17.6.2008

Репутация: нет
Всего: нет



Привет всем, я новенький на форуме и в освоении "С".

У меня следующая проблема:

Код
#include <stdio.h>
#include <stdlib.h>

struct Knoten {
       int Inhalt;
       struct Knoten *next;
};

struct Knoten *create_Liste(struct Knoten *p);
void print_Liste(struct Knoten *);

int main(int argc, char *argv[])
{
  struct Knoten *head;
  head = create_Liste(head);
  print_Liste(head);
  
  system("PAUSE");    
  return 0;
}

struct Knoten *create_Liste(struct Knoten *p) {
       int Zahl;
       struct Knoten *Neu;
       printf("\nErste Zahl eingeben: ");
       scanf("%d", &Zahl);
       Neu = malloc(sizeof(struct Knoten));
       Neu->Inhalt = Zahl;
       Neu->next = NULL;
       p=Neu;
      
       while(Zahl!=0) {
              printf("\nWeitere Zahl eingeben: ");
              scanf("%d", &Zahl);
              Neu = malloc(sizeof(struct Knoten));
              Neu->Inhalt= Zahl;
              Neu->next=p;
              p=Neu;
       }
       return p;
}

void print_Liste(struct Knoten *p) {
     printf("\n");
     while(p!=NULL) {
              printf(" -> %d", p->Inhalt);
              p=p->next;
     }
     printf("\n\n");
}
В этом коде функция create_Liste добавляет новые цифры (Knoten) в начало страницы.

Я должен модифицировать её так, чтобы новые цифры добавлялись не в начале а в конце.

ПС: может мне кто помочь в написании функции, которая бы проверяла есть ли уже в списке введённое
число, и если да то удаляла бы его?

Я заранее благодарю всех откликнувшихся.
PM MAIL   Вверх
pilotnet
Дата 18.6.2008, 08:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 43
Регистрация: 22.4.2008

Репутация: нет
Всего: нет



термины у тебя странные "страницы"
это односвязанный список 
что бы добавит в конец списка нажно сделать вместо 
Код

              Neu = malloc(sizeof(struct Knoten));
              Neu->Inhalt= Zahl;
              Neu->next=p;
              p=Neu;

во это 
Код

              Neu = malloc(sizeof(struct Knoten));
              Neu->Inhalt= Zahl;
              p->next=Neu;

но что бы пройти обатно в качалу тебе лучше добавить
Код

struct Knoten {
       int Inhalt;
       struct Knoten *next;
      struct Knoten *prev;
};


реши как будешь делать потом посмотрим что делать с проверкой на вхождения числа в список и его удаление 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0481 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.