#include<stdio.h>
#define size 40
typedef struct{
int data[size];
int top;
}Stack;
void clear_Stack(Stack *s){//清空栈
s->top=0;
}
int Is_Empty(Stack *s){//判空
if(0==s->top){
return 1;
}
return 0;
}
int Is_Full(Stack *s){//判满
if(size==s->top){
return 1;
}
return 0;
}
void in_Stack(Stack *s,int x){//入栈
if(!Is_Full(s)){
s->data[s->top]=x;
s->top++;
}
}
void out_Stack(Stack *s,int *x){//出栈
if(!Is_Empty(s)){
s->top--;
*x=s->data[s->top];
}
}
void all_Stack(Stack *s){//遍历栈
int i;
for(i=s->top-1;i>=0;i--){
printf("%c",s->data[i]);
}
}
int main(){
Stack s;
clear_Stack(&s);
// in_Stack(&s,1);
// in_Stack(&s,2);
// in_Stack(&s,3);
// in_Stack(&s,4);
// in_Stack(&s,5);
//
// out_Stack(&s);
char num[]="0123456789ABCDEF";
int N=2016;
int mod;
while(N!=0){
mod=N%16;
in_Stack(&s,mod);
N/=16;
}
int e=0;
while(!Is_Empty(&s)){
out_Stack(&s,&e);
printf("%c",num[e]);
}
all_Stack(&s);
printf("\n");
return 0;
}
进制转换--c语言栈实现
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 第1章 第一个C程序第2章 C语言基础第3章 变量和数据类型第4章 顺序结构程序设计第5章 条件结构程序设计第6章...