qq_39190586
2017-10-11 04:52
采纳率: 100%
浏览 1.2k
已采纳

数据结构C语言版数制转换

#include
#include
#include
#define MAXSIZE 100

typedef struct {
int *top;
int *base;
int stacksize;
}STACK;
void initStack(STACK *S){
S->base=(int * )malloc(MAXSIZE * sizeof(int));
S->top=S->base;
S->stacksize=MAXSIZE;

}

void push(STACK *S,int e){
*S->top =e;
S->top=S->top+1;
}

void pop(STACK *S,int *e){

S->top=S->top-1;
*e = *S->top;
}

void conversion(int n,int d){
int e;
STACK S;
initStack(&S);
while(n){
push(&S,n%d);
n=n/d;
}
printf("after conversion:\n");
pop(&S,&e);
if(e>10){
printf("%c",e-10+'A');
}
else
printf("%d",e);
}

int main() {
int n,d;
printf("input n:\n");
scanf("%d",&n);
printf("input d:\n");
scanf("%d",&d);
conversion(n,d);
return 0;
}

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • blownewbee 2017-10-11 17:34
    已采纳
    点赞 打赏 评论
  • efes 2021-02-21 12:25

    点赞 打赏 评论

相关推荐 更多相似问题