| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 847 人关注过本帖
标题:才学链栈的进入与出栈时始终显示0怎么会事?
取消只看楼主 加入收藏
dzy123
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:379
专家分:820
注 册:2013-4-18
结帖率:82%
收藏
已结贴  问题点数:20 回复次数:1 
才学链栈的进入与出栈时始终显示0怎么会事?
程序代码:
#include <stdio.h>
#include <stdlib.h>

 struct node{
    float  Data;
    struct node *Next;
};

 
struct node * InitStack(){
    struct node *top;
     top = (struct node *)malloc(sizeof(struct node));
    top->Next=0;
    return top;
}

 void  Push(struct node *top, float x){
    struct node *p;
    p=(struct node *)malloc(sizeof(struct node));
    p->Next = top->Next;
    p->Data=x;
    top->Next=p;
    
}
float  Pop(struct node *top){
    if(top->Next==0){
        printf("栈为空\n");
        return 0;
    }
    struct node *p;
     p =top->Next;
    float x= p->Data;
    top->Next = p->Next;
    free(p);
    return x;
}

 
int main(void){
    struct node  *top;
     top = InitStack();
    for(int i = 0; i<11;i++){
        Push(top,i*1.0);
    }  
    printf("%d\n",Pop(top));
    printf("%d\n",Pop(top));
    printf("%d\n",Pop(top));
    return 0;
}

运行结果为0
搜索更多相关主题的帖子: struct node Next top return 
2018-05-07 15:48
dzy123
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:379
专家分:820
注 册:2013-4-18
收藏
得分:0 
回复 2楼 grmmylbs
谢谢你。
2018-05-07 16:10
快速回复:才学链栈的进入与出栈时始终显示0怎么会事?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.029967 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved