数据结构实验之栈一:进制转换

数据结构实验之栈一:进制转换

Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^

题目描述

输入一个十进制整数,将其转换成对应的R(2<=R<=9)进制数,并输出。

输入

第一行输入需要转换的十进制数;
第二行输入R。

输出

输出转换所得的R进制数。

示例输入

1279
8

示例输出

2377




#include <stdio.h>

#include <stdlib.h>
typedef struct {
    int *base;
    int *top;
    int Lsize;
}Sqstack;
Sqstack push(Sqstack &s,int e){
    *s.top++=e;
}
int pop(Sqstack &s,int &a){
    if(s.top==s.base)return -1;
    s.top--;a=*s.top ; return a ;
    }
int Empty(Sqstack &s){
    if(s.top==s.base) return 0;
    else return 1;
}
char clearstack(Sqstack &s){
    s.top=s.base;
}


int main(){
    int n,m,e;
    Sqstack S;
    S.base=(int *)malloc(1010*sizeof(int));
    S.top=S.base;
    scanf("%d%d",&n,&m);
    while(n){
       push(S,n%m);
        n=n/m;
    }
    while (Empty(S)){
        e=pop(S,e);
        printf("%d",e);
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值