全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

C语言用栈实现十进制转换为二进制的方法示例

本文实例讲述了C语言用栈实现十进制转换为二进制的方法。分享给大家供大家参考,具体如下:

#include<stdio.h>
#include<malloc.h>
#include<math.h>
#include<string.h>
#include "process.h"
#define SIZE 100
#define STACKINCREMENT 10
#define OK 1
#define ERROR 0
#define TRUE 1
#define FALSE 0
typedef int Status;
typedef struct
{
  int a;
} SElemType;
typedef struct
{
  SElemType *base;
  SElemType *top;
  int stacksize;
} SqStack;
SqStack S; //定义全局变量
Status InitStack(SqStack *S)
{
  S->base=(SElemType *)malloc(SIZE*sizeof(SElemType));
  if(!S->base) exit(OVERFLOW);
  S->top=S->base;
  S->stacksize=SIZE;
  return OK;
}
Status Push(SqStack *S,SElemType e)
{
  if(S->top-S->base>=S->stacksize)
  {
    S->base=(SElemType *)malloc((S->stacksize+STACKINCREMENT)*sizeof(SElemType));
    if(!S->base) exit(OVERFLOW);
    S->top=S->base+S->stacksize;
    S->stacksize+=STACKINCREMENT;
  }
  *S->top++=e;
  //printf("%dwww\n",*--S->top);
  return OK;
}
Status Stackempty(SqStack *S)
{
  if(S->top==S->base)
    return TRUE;
  else
    return FALSE;
}
Status Pop(SqStack *S,SElemType *e)
{
  if(S->top==S->base) return ERROR;
  *e=*--S->top;
  return OK;
}
Status DtoBTrans(int N,SqStack *S)
{
  SElemType e;
  while(N)
  {
    e.a=N%2;
    Push(S,e);
    N=N/2;
  }
  while(!Stackempty(S))
  {
    Pop(S,&e);
    printf("%d",e);
  }
  return OK;
}
void main()
{
  int x;
  InitStack(&S);
  printf("请输入十进制数:");
  scanf("%d",&x);
  DtoBTrans(x,&S);
}

运行结果:

希望本文所述对大家C语言程序设计有所帮助。


# C语言  #   # 十进制  # 转换  # 二进制  # C语言16进制与ASCII字符相互转换  # C语言每日练习之进制转换  # C语言的进制转换及算法实现教程  # C语言实现进制转换函数的实例详解  # C语言中网络地址与二进制数之间转换的函数小结  # 编写C语言程序进行进制转换的问题实例  # C语言进制转换代码分享  # C语言实现任意进制转换器  # 给大家  # 请输入  # 转换为  # 所述  # 全局变量  # 讲述了  # 十进制数  # process  # define  # malloc  # math  # string  # SIZE  # ERROR  # TRUE  # STACKINCREMENT  # pre  # class  # scanf  # int 


相关文章: 网站制作网站,深圳做网站哪家比较好?  西安专业网站制作公司有哪些,陕西省建行官方网站?  打鱼网站制作软件,波克捕鱼官方号怎么注册?  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  网站制作需要会哪些技术,建立一个网站要花费多少?  建站之星微信建站一键生成小程序+多端营销系统  宝盒自助建站智能生成技巧:SEO优化与关键词设置指南  建站主机选择指南:服务器配置与SEO优化实战技巧  交易网站制作流程,我想开通一个网站,注册一个交易网址,需要那些手续?  ,怎么在广州志愿者网站注册?  广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?  深圳网站制作费用多少钱,读秀,深圳文献港这样的网站很多只提供网上试读,但有些人只要提供试读的文章就能全篇下载,这个是怎么弄的?  头像制作网站在线制作软件,dw网页背景图像怎么设置?  如何快速生成凡客建站的专业级图册?  台州网站建设制作公司,浙江手机无犯罪记录证明怎么开?  如何通过PHP快速构建高效问答网站功能?  如何快速启动建站代理加盟业务?  html制作网站的步骤有哪些,iapp如何添加网页?  枣阳网站制作,阳新火车站打的到仙岛湖多少钱?  移民网站制作流程,怎么看加拿大移民官网?  建站主机如何选?高性价比方案全解析  mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?  官网网站制作腾讯审核要多久,联想路由器newifi官网  如何解决VPS建站LNMP环境配置常见问题?  如何登录建站主机?访问步骤全解析  建站之星如何配置系统实现高效建站?  定制建站流程步骤详解:一站式方案设计与开发指南  如何选择适合PHP云建站的开源框架?  如何配置支付宝与微信支付功能?  如何在Golang中使用replace替换模块_指定本地或远程路径  深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?  厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?  如何获取PHP WAP自助建站系统源码?  建站主机选虚拟主机还是云服务器更好?  建站之星安装后如何自定义网站颜色与字体?  如何高效配置香港服务器实现快速建站?  如何用美橙互联一键搭建多站合一网站?  如何快速搭建虚拟主机网站?新手必看指南  Android自定义控件实现温度旋转按钮效果  免费网站制作模板下载,除了易企秀之外还有什么H5平台可以制作H5长页面,最好是免费的?  电商网站制作公司有哪些,1688网是什么意思?  表情包在线制作网站免费,表情包怎么弄?  如何在万网自助建站平台快速创建网站?  如何选择高效可靠的多用户建站源码资源?  建站之星2.7模板:企业网站建设与h5定制设计专题  北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?  南京做网站制作公司,南京哈发网络有限公司,公司怎么样,做网页美工DIV+CSS待遇怎么样?  武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?  宝塔建站后网页无法访问如何解决?  建站168自助建站系统:快速模板定制与SEO优化指南 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。