| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 755 人关注过本帖
标题:数据结构-栈
只看楼主 加入收藏
wbajieng
Rank: 1
等 级:新手上路
帖 子:20
专家分:1
注 册:2010-3-28
结帖率:71.43%
收藏
已结贴  问题点数:10 回复次数:5 
数据结构-栈
本人刚学习栈,但是用C语言还没写出来那个高手能帮忙写个将十进制转换成八进制的代码
要用上栈
谢了哈!!
搜索更多相关主题的帖子: 数据结构 
2010-04-24 00:28
寒风中的细雨
Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17
等 级:贵宾
威 望:66
帖 子:1710
专家分:8645
注 册:2009-9-15
收藏
得分:4 
#include <stdio.h>
#include <stdlib.h>

#define MAXS 8//
#define ADD  8//

 typedef struct
{
    int *base;
    int *top;
    int stacksize;
}Sqstack;

void InitStack( Sqstack &s)
{
    s.base = (int *) malloc (MAXS*sizeof(int));
    if( !s.base )
        exit(0);
    s.top = s.base;
    s.stacksize = MAXS;
}

void Push( Sqstack &s, int temp )
{
    if( s.top-s.base>=MAXS )
    {
        s.base =(int *) realloc (s.base, (MAXS+ADD)*sizeof(int));
        if( !s.base )
            exit(0);
        s.top = s.base + s.stacksize;
        s.stacksize += ADD;
    }
    *s.top++ = temp;
}

void Pop( Sqstack &s, int &temp )
{
    if( s.top==s.base )
        return;
    temp = *--s.top;
}

int main()
{
    Sqstack s;
    InitStack(s);
    int n;
    int temp;

    printf("input the number:");
    scanf("%d", &n);
    while( n )
    {
        temp= n%8;
        Push( s, temp );
        n = n/8;
    }
    while( s.base != s.top )
    {
        Pop( s, temp );
        printf("%d",temp);
    }
    printf("\n");

    return 0;
}
2010-04-24 07:58
MyStar
Rank: 1
等 级:新手上路
帖 子:75
专家分:9
注 册:2010-3-30
收藏
得分:0 
2010-04-24 11:33
panny90
该用户已被删除
收藏
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽
2010-04-28 18:52
呜呼哀哉
该用户已被删除
收藏
得分:3 
提示: 作者被禁止或删除 内容自动屏蔽
2010-04-28 19:50
LegendofMine
该用户已被删除
收藏
得分:3 
提示: 作者被禁止或删除 内容自动屏蔽
2010-04-29 05:55
快速回复:数据结构-栈
数据加载中...
 
   



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

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