[问题] 请问字串堆叠的问题???

楼主: hunkchen2016 (我的鸡巴女友)   2018-06-07 15:51:46
请问各位强者
我想把字串写入堆叠,然后再从堆叠中取出
请问我的程式该怎么改!!因为一直出现错误
#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
作者: Schottky (顺风相送)   2018-06-07 15:54:00
字串处理的部分整个错了
作者: jerryh001   2018-06-07 15:54:00
fgets用法完全错误而且这种语法错误应该会有错误讯息 下次请先google
作者: sarafciel (Cattuz)   2018-06-07 20:08:00
你如果想印字符循环内那个printf要用%c才对
作者: cphe (魔鬼藏在垃圾筒里)   2018-06-16 12:06:00
应该不只上面提到的问题.......

Links booklink

Contact Us: admin [ a t ] ucptt.com