kuyrukların listelerle gösterimi


#include<stdio.h>
#include<stdlib.h>
#define stack_size 4
typedef struct node{
 node *next;
 int data;
};
typedef struct stack
{
 int cnt=0;
 node *top;
};
void push(stack *stk,int veri)
{
 if(stk->cnt==stack_size)
 {
  printf("stack doludur.");
  
 }
 else{
  if(stk->cnt==0)
  {
   node *temp=(node *)malloc(sizeof(node));
   temp->data=veri;
   temp->next=NULL;
   stk->top=temp;
   stk->cnt++;
  }
 else
 {
  node *temp2=(node *)malloc(sizeof(node));
  temp2->data=veri;
  temp2->next=stk->top;
  stk->top=temp2;
  stk->cnt++;
 }
  
  
 }

}
void listele(stack *stk)
{
 if(stk->cnt==0)
  printf("stack bostur.");
 else
 {
  node *temp=stk->top;
  for(int i=0;i<stk->cnt;i++)
  {
   printf("%d\n",temp->data);
   temp=temp->next;
  }
 }
}
void pop(stack *stk)
{
 if(stk->cnt==0)
  printf("liste bostur eleman silinemez!");
  
     else
     {
      node *temp=stk->top;
      stk->top=stk->top->next;
      free(temp);
      stk->cnt--;
     }
 
}


main()
{
 stack m;
 stack *p=&m;
 push(&m,5);
  push(p,55);
  listele(p);
  pop(p);
  printf("pop isleminden sonra\n");
   listele(p);
 
}
sonraki
« Prev Post
Önceki
Next Post »
Thanks for your comment