kuyrukların dizilerle gösterimi


#include<stdio.h>
#include<stdlib.h>
#define kuyruk_boyut 4
typedef struct  node{
 int data;
 struct node *next;
};
typedef struct queue
{
  int cnt=0;
  node *rear;
  node *front;
};
void ekle(queue *q,int veri)
{ if(q->cnt== kuyruk_boyut)
  printf("kuyruk doludur.");
 else{
  
   if(q->cnt==0)
  {
   node *temp=(node *)malloc(sizeof(node));
   temp->data=veri;
   temp->next=NULL;
   q->rear=temp;
   q->front=temp;
   
  }
 else
  {
  node *temp2=(node *)malloc(sizeof(node));
  temp2->data=veri;
  temp2->next=NULL;
  q->rear->next=temp2;
  q->rear=temp2;
   
  }
 q->cnt++;
 
  
 }
 

 
}
void sil(queue *q)
{
 if(q->cnt==0)
  printf("kuyruk bostur.");
 else
 {
  node *temp=q->front;
  q->front=q->front->next;
  free(temp);
  q->cnt--;
 }
 
 
}
void listele(queue *q)
{
 if(q->cnt==0)
  printf("kuyruk bostur.");
 else
 {
 node *temp=q->front;
  while(temp!=NULL)
   {
    printf("%d\n",temp->data);
    temp=temp->next;
   }
 }
 
}
main()
{
 queue q;
 ekle(&q,5);
 ekle(&q,85);
 listele(&q);
 printf("silden sonra\n");
 sil(&q);
  listele(&q);
 
}
sonraki
« Prev Post
Önceki
Next Post »
Thanks for your comment