با سلام خدمت همه
بچه ها من این برنامه رو نوشتم اما درست جواب نمیده و مشکل داره اگه میشه یکی برام اصلاحش کنه.
برنامه اصلی این هست که چند رشته رو می گیره و در پشته قرار میده.
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#define SIZE 100
struct stack
{
int top;
char item[100][100];
};
struct stack *ps;
char k[10];
void push(struct stack *ps,char *s)
{
if(ps->top==SIZE-1)
{
printf("Stack Overflow");
exit(1);
}
for(int i=0;k[i];i++)
*ps->item[i][++(ps->top)]=s;
}
int empty(struct stack *ps)
{
if(ps->top==-1)
return 1;
else
return 0;
}
char pop(struct stack *ps)
{
if(empty(ps))
{
printf("Stack Underflow");
exit(1);
}
return *(ps->item[(ps->top)--]);
}
void main()
{
ps->top=-1;
clrscr();
char s[10];
gets(s);
push(ps,s);
printf("%c\n\n\n",pop(ps));
getch();
}