#include<stdio.h>
#include<stdlib.h>
#define ERROR -1
int m,n,e;
typedef int Status;
typedef struct Node{
int data; //结点的数据域
struct Node *next; //结点的指针域
}Node,*LinkList;
int Init_Stack(LinkList &S)
{
S = (LinkList)malloc(sizeof(Node));
if(!S)
return ERROR;
S->next = NULL;
return 1;
}
int Push_Stack(LinkList &S,int e)
{
LinkList p = (LinkList)malloc(sizeof(Node));
p->data = e;
p->next = S->next;
S->next = p;
return 1;
}
int qwe(LinkList &S)
{
LinkList p = S->next;
if(!p)
return 0;
else return 1;
}
int All_Stack(LinkList S)
{
int i = 0;
LinkList p = S->next;
if(!p)
return ERROR;
while(p)
{
printf("%d",p->data);
p = p->next;
}
return 1;
}
void conversation(LinkList &S)
{
int i=0;
printf("%d用%d进制表示为:",n,m);
while(n)
{
if(Push_Stack(S,n%m))//调用函数,实现栈
{
n=n/m;
}
}
All_Stack(S);//输出栈元素
}
int main()
{
printf("输入一个非负的十进制数\n");
LinkList S;
Init_Stack(S);
scanf("%d",&n);
printf("输入进制");
scanf("%d",&m);
conversation(S);
system("pause");
return 0;
}
更多推荐
【无标题】十进制转换成任意进制
发布评论