欢迎来到天天文库
浏览记录
ID:47916018
大小:69.50 KB
页数:2页
时间:2019-10-26
《用C语言顺序栈实现十进制和二进制的转换》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、#include#include#include#defineM100typedefintdatatype;typedefstruct{datatypedata[M];inttop;}seqstack;voidInitStack(seqstack*s){//初始化顺序栈s->top=-1;}intStackEmpty(seqstack*s){//判断栈是否为空if(s->top>=0)return1;elsereturn0;}seqstack*push(seqstack*s,datatypex){//元素入栈函数if(s->top=
2、=M-1)returnNULL;else{s->top++;s->data[s->top]=x;}returns;}datatypepop(seqstack*s){//元素出栈函数datatypex;x=s->data[s->top];s->top--;returnx;}voidmain(){//对于输入的任意一个非负十进制整数,打印输出与其等值的二进制数seqstack*s;datatypen,e;inti=0,j=0;scanf("%u",&n);//输入非负十进制整数ns=(structseqstack*)malloc(sizeof(int));if(s==NULL)exit(0);
3、InitStack(s);//初始化栈while(n)//当n不等于0{push(s,n%2);//入栈n除以2的余数(2进制的低位)i++;//统计入栈元素个数n=n/2;}while(j
此文档下载收益归作者所有