请问各位强者
我想把字串写入堆叠,然后再从堆叠中取出
请问我的程式该怎么改!!因为一直出现错误
#include <stdio.h>
#include <stdlib.h>
#define MAXSTACK 100 /*定义最大堆叠容量*/
char stack[MAXSTACK]; //堆叠的阵列宣告
int top=-1; //堆叠的顶端
int isEmpty();
void push(char string);
char pop();
int main(int argc, char *argv[]) {
char string[3];
int i;
printf("请依序输资料:\n");
fgets(string[0], 100, stdin);
push(string)
fgets(string[0], 100, stdin);
push(string);
fgets(string[0], 100, stdin);
push(string);
printf("====================\n");
while(!isEmpty()){
printf("堆叠弹出的顺序为:%d\n",pop());
}
pop();
return 0;
}
/*判断是否为空堆叠*/
int isEmpty()
{
if(top==-1)
{
return 1;
}
else
{
return 0;
}
}
/*将指定的资料存入堆叠*/
void push(string)
{
if(top>=MAXSTACK){
printf("堆叠已满,无法再加入\n");
}
else
{
top++;
stack[top]=string;
}
}
/*从堆叠取出资料*/
char pop(){
char data;
if(isEmpty())
{
printf("堆叠已空\n");
}else
{
data=stack[top];
top