Тема: Лінійні односвзязні списки
Koala: додав теги [ code ]. Наступного разу робіть це самі.
Потрібна допомога. Завдання потрібно створити список книг(назва автор к-сть сторінок рік випуску та стиль). Вивести спочатку ввесь список, а потім дані про книгу автора якої ми вводимо. На початку вже десь зявились помилки, у коді поки тільки 2 частини завдання і коли вирішив просто перевірити, щось пішло не так. Допоможіть мій код нижче
#define _CRT_SECURE_NO_WARNINGS
#include <stdlib.h>
#include <stdio.h>
#include <malloc.h>
#include<Windows.h>
#include <math.h>
struct book
{
char nazva[30], autor[30], style[20];
int year, pages;
struct book *next;
};
struct book *poperedbook, *element, *first, *ostaniy;
void Stvorenya(void)
{
element = (struct book*)malloc(sizeof(struct book));
first = element;
do
{
poperedbook = element;
printf(" Вкажіть назву книги, автора, кількіть сторінок, рік випуску та стиль");
scanf("%s,%s,%d,%d,%s", element->nazva, element->autor, &element->pages, &element->year, element->style);
element->next=(struct book*)malloc(sizeof(struct book));
element = element->next;
}
while (poperedbook->pages != 0 || poperedbook->year != 0);
{
ostaniy = poperedbook;
poperedbook->next = NULL;
}
}
void Vuvedenya(void)
{
element = first;
while (element != NULL)
{
printf(" Назва книги %s, автор -- %s кількість сторінок --%d рік випуску --%d стиль -- %s ",element->nazva, element->autor,element->pages,element->year,element->style);
poperedbook = element;
element = element->next;
}
}
int main()
{
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
printf("Створюємо список книг \n");
printf("Для завершення введення списку введіть всі нулі \n");
Stvorenya();
printf("Введений список книг матиме наступний вигляд \n");
Vuvedenya();
printf("Введіть автора дані про книгу якого ви хочете отримати \n");
return 0;
}