| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 931 人关注过本帖
标题:利用栈输入十进制数显示相应的八进制数
只看楼主 加入收藏
蓝薇
Rank: 1
来 自:河北衡水
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-12-5
收藏
 问题点数:0 回复次数:0 
利用栈输入十进制数显示相应的八进制数
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#define OK 1
#define ERROR 0;
#define stack_init_size 5
#define stackincrement 2
typedef struct
{
  int *base;
  int *top;
  int stacksize;
}SqStack;
int initstack(SqStack*s)
{
  s->base=(int*)malloc(stack_init_size*sizeof(int));
  if(!s->base)exit(0);
  s->top=s->base;
  return OK;
}
int push(SqStack*s,int x)
{
  if(s->top-s->base>=s->stacksize)
  {
     s->base=(int*)realloc(s->base,(s->stacksize+stackincrement)*sizeof(int));
     if(!s->base)exit(0);
     s->top=s->base+s->stacksize;
     s->stacksize+=stackincrement;
  }
  *s->top++=x;
  return OK;

}
int pop(SqStack*s,int *x)
{

   if(s->top==s->base) return ERROR;

   x=*--s->top;
   printf("%d",x);
   return OK;
}
void main()
{

  int N;
  SqStack *s;
  int*x;
  clrscr();
  initstack(s);
  printf("\nplease input a number:");
  scanf("%d",&N);
  while(N)
  {
     push(s,N%8);
     N=N/8;
  }
  printf("\n8jin zhi numbers is:");
  while(s->top!=s->base)
  {
    pop(s,x);

  }
  getch();
}
搜索更多相关主题的帖子: 八进制 十进制 输入 
2007-12-05 13:03
快速回复:利用栈输入十进制数显示相应的八进制数
数据加载中...
 
   



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

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