您的位置:首页 > 其它

完全正确的十进制转换其他任何进制,朋友帮我改的

2006-05-07 13:50 253 查看
#include"stdio.h"
#define maxsize 100
typedef struct stack
{
int a[maxsize];
int top;
}stack;

void init_stack(stack &sq)
{sq.top=0;}

int stackempty(stack sq)
{
return(sq.top?0:1);
}

void push(stack &sq,int x)
{
if(sq.top==maxsize)
printf("the stack is full");
sq.a[sq.top++]=x;

}

int pop(stack &sq)
{
if(stackempty(sq))
{
printf("the stack is empty");
}
sq.top--;
return sq.a[sq.top];
}

void jinzhizhuanhuan(int N,int B)
{
int i;
stack sq;
init_stack(sq);
while(N)
{
push(sq,N%B);
N=N/B;
}
while(!stackempty(sq))
{
i=pop(sq);
printf("%d",i);
}
}

main()
{
int N,B;
printf("输入一个十进制数:");
scanf("%d",&N);
printf("转换为几进制 :");
scanf("%d",&B);

jinzhizhuanhuan(N,B);
printf("/n");
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: