Alvin's Blog

Just another Binusian blog site

Tugas Double Linked List

March20
#include<stdio.h>
#include<stdlib.h>
#pragma warning(disable: 4996)
typedef struct tnode{
 struct tnode *next;
 struct tnode *prev;
 int x;
};
struct tnode *head, *connector, *temp;
int main(){
 // fungsi untuk mencetak angka 1 dan 3 dalam bentuk double linked list
 head = (struct tnode*)malloc(sizeof(struct tnode));
 head->next = NULL;
 head->prev = NULL;
 head->x = 1;
 connector = head;
 connector->next = (struct tnode*)malloc(sizeof(struct tnode));
 connector = connector->next;
 connector->next = NULL;
 connector->x = 3;
 connector->prev = head->next;
 connector = head;
 if(connector != NULL){
 while(connector->next != NULL){
 printf("%d ", connector->x);
 connector = connector->next;
 }
 printf("%d", connector->x);
 }
// fungsi untuk menambahkan angka 2 diantara 1 dan 3
 connector = head;
 if(connector != NULL){
 while(connector->next != NULL){
 if(connector->x == 1 && connector->next->x == 3){
 temp = (struct tnode*)malloc(sizeof(struct tnode));
 temp->x = 2;
 temp->next = connector->next;
 temp->prev = head->next;
 connector->next = temp;
 }
 connector = connector->next;
 }
 }
 printf("\n\n");
 connector = head;
 if(connector != NULL){
 while(connector->next != NULL){
 printf("%d ", connector->x);
 connector = connector->next;
 }
 printf("%d", connector->x);
 }
// fungsi untuk menambahkan angka 0 didepan liat data
 temp = (struct tnode*)malloc(sizeof(struct tnode));
 temp->next = head;
 temp->x = 0;
 temp->prev = NULL;
 head = temp;
 printf("\n\n");
 connector = head;
 if(connector != NULL){
 while(connector->next != NULL){
 printf("%d ", connector->x);
 connector = connector->next;
 }
 printf("%d", connector->x);
 }
// fungsi untuk mencetak angka 5 di paling akhir
 connector->next = (struct tnode*)malloc(sizeof(struct tnode));
 connector = connector->next;
 connector->next = NULL;
 connector->x = 5;
 connector->prev = head->next->next->next->next->next;
 printf("\n\n");
 connector = head;
 if(connector != NULL){
 while(connector->next != NULL){
 printf("%d ", connector->x);
 connector = connector->next;
 }
 printf("%d", connector->x);
 }
 printf("\n\n\n");
 printf("Created by Alvin Okavianus\n");
 printf("1701293004\n");
 printf("32PPT\n\n");
 system("PAUSE");
 return 0;
}
posted under Uncategorized

Email will not be published

Website example

Your Comment: