Új hozzászólás Aktív témák
-
chabeee
aktív tag
hello agian,
a printback-nél mit rontok el? egyszerüen nem akarja kiírni pedig sztem hiba nincs benne, lessétek meg please:
#include <stdio.h>
#include <stdlib.h>
typedef struct Node {
int data;
int nev;
struct Node *next;
struct Node *prev;
} node;
void insert_after(node *nodee, int data, int nev){
node *start = nodee;
while(nodee->next != start) {
nodee = nodee->next;
}
nodee->next = (node*)malloc(sizeof(node));
nodee->prev = nodee;
nodee = nodee->next;
nodee->data = data;
nodee->nev = nev;
nodee->next = start;
}
void insert_before(node *nodee, int data, int nev){
node *newNode = (node *) malloc(sizeof(node));
newNode->data = data;
newNode->nev = nev;
newNode->next = nodee->next;
newNode->prev = nodee;
nodee->next = newNode;
(nodee->next)->prev = newNode;
}
int find(node *nodee, int key){
node *start = nodee;
nodee = nodee->next;
while(nodee != start) {
if(nodee->data == key) {
return 1; //Element Found!
}
nodee = nodee->next;
}
//Element Not Found!
return 0;
}
void delete(node *nodee,int data){
node *start = nodee;
while(nodee->next != start && (nodee->next)->data != data) {
nodee = nodee->next;
}
if(nodee->next == start) {
printf("Element %d is not presented in the list \n", data);
return;
}
node *temp;
temp = nodee->next;
nodee->next = temp->next;
free(temp);
return;
}
void print(node* start, node* nodee){
if(nodee == start) {
return;
}
printf("%d %d ", nodee->data, nodee->nev);
print(start,nodee->next);
}
void printBack(node* start, node* nodee){
if(nodee == start) {
return;
}
print(start,nodee->prev);
printf("%d %d ", nodee->data, nodee->nev);
}
int main() {
int query;
node *start = (node*)malloc(sizeof(node));
start->next = start;
start->prev = start;
printf("1 - Insert_after\n");
printf("2 - Insert_before\n");
printf("3 - Delete\n");
printf("4 - Print\n");
printf("5 - Print Back\n");
printf("6 - Find\n");
while(1) {
printf("query: ");
scanf("%d", &query);
//insert_to_the_end
if(query == 1) {
int data;
int nev;
scanf("%d", &data);
scanf("%d", &nev);
insert_after(start, data,nev);
}
//insert_to_the_begginning
if(query == 2) {
int data;
int nev;
scanf("%d", &data);
scanf("%d", &nev);
insert_before(start, data,nev);
}
//delete
else if(query == 3) {
int data;
scanf("%d", &data);
delete(start, data);
}
//print
else if(query == 4) {
printf("The list is: ");
print(start,start->next);
printf("\n");
}
//printback
else if(query == 5) {
printf("The list is: ");
printBack(start,start->prev);
printf("\n");
}
//find
else if(query == 6) {
int data;
scanf("%d",&data);
int status = find(start,data);
if(status) {
printf("Elements Found\n");
} else {
printf("Elements Not Found\n");
}
}
}
return 0;
}
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Nvidia GPU-k jövője - amit tudni vélünk
- Luck Dragon: Asszociációs játék. :)
- OLED TV topic
- LEGO klub
- Építő/felújító topik
- Eredeti játékok OFF topik
- Itt a Galaxy S26 széria: az Ultra fejlődött, a másik kettő alig
- TP-Link WR1043ND router
- Épített vízhűtés (nem kompakt) topic
- Diablo IV
- További aktív témák...
- BESZÁMÍTÁS! Gigabyte Vision OC RTX 3080 10GB videokártya garanciával hibátlan működéssel
- Apple iPhone 14 Pro 128GB,Újszerű,Dobozaval,12 hónap garanciával
- Hp, Dell gyári 65W USB-C Type-C töltők, tápegységek
- Apple iPhone 13 128GB, Kártyafüggetlen, 1 Év Garanciával
- Apple iPhone 15 Pro 128GB,Újszerű,Dobozaval,12 hónap garanciával
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
