十进制转为二进制整数原理

来源:百度知道 编辑:UC知道 时间:2024/06/28 01:57:05

除2取余,取出的逆序排列就得2进制
这是我用C写的:
#include<stdio.h>
#include<math.h>
#include<malloc.h>

typedef int ElemType;

typedef struct LNode
{
ElemType data;
struct LNode *next;
}LNode,*LinkList;

void InitList_L(LinkList &L)
{
L=(LinkList)malloc(sizeof(LNode));
L->next=NULL;
}

void CreatList_L(LinkList &L,int n)
{
int a;
LNode *p;
for(;n>0;n=n/2)
{
a=(int)(fmod(n,2));
p=(LinkList)malloc(sizeof(LNode));
p->next=L->next;
L->next=p;
p->data=a;
}
}

void Print_L(LinkList L)
{
LNode *p;
p=L->next;
while(p)
{
printf("%d ",p->data);
p=p->next;
}
printf("\n");
}

void main()
{
int n;
scanf("%d",&n);
LinkList L;
InitList_L(L);
CreatList_L