输入一个正整数num(大于0且在int范围内),再输入一个N(2<=N<=36)表示要转换成多少进制
输出转换结果
#include<stdio.h>
#include<stdlib.h>
#define ElemType char
typedef struct Lnode
{
ElemType data;
struct Lnode* next;
}Lnode;
typedef Lnode* Linklist;
Linklist Create_L(int num,int n)
{
Linklist L;
Linklist p;
L=(Linklist)malloc(sizeof(Lnode));
L->next=NULL;
int i;
int r=num%n;
int s=num/n;
char q='A';
while(s!=0)
{
if(r>=10) q=q+r-10;
else q=r;
while(q)
{
p=(Linklist)malloc(sizeof(Lnode));
p->data=q;
p->next=L->next;
L->next=p;
}
r=s/r;
s=s/n;
}
return L;
}
Linklist Printl(Linklist L)
{
Linklist p;
p = L->next;
while(p!=NULL)
{
printf("%c ",p->data);
p = p->next;
}
return L;
}
int main()
{
Linklist L1;
int num,n;
scanf("%d %d",&num,&n);
L1=Create_L(num,n);
Printl(L1);
return 0;
}