#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
« Prev Post
Önceki
Next Post »
Next Post »
Kaydol:
Kayıt Yorumları (Atom)
Show Conversion Code Hide Conversion Code Show Emoticon Hide Emoticon