问题 L 算法3-1:八进制数
时间限制: 1 Sec 内存限制: 128 MB[ 提交]
题目描述
将十进制数转换为八进制,并输出。
图:将十进制数转换为八进制并输出
输入
输入包含若干十进制正整数。
输出
输出相应的八进制数,每个占一行。
样例输入
1237891910020345
样例输出
123710112346162771
提示
*** 提示已隐藏,点击此处可显示 ***
#include<stdio.h>
#include<malloc.h>
typedef struct Node
{
int data;
struct Node *next;
}List;
List *Creat()
{
int N;
scanf("%d",&N);
List *head;
List *p1,*p2;
p1=p2=(List *)malloc(sizeof(List ));
head=p1;
while(N!=0)
{
p1->data=N%8;
N=N/8;
p2=p1;
p1=(List *)malloc(sizeof(List ));
p2->next=p1;
}
p2->next=NULL;
return head;
}
List *Inverse(List *head)
{
int data=0;
List *p1,*p2;
p1=head;
p2=p1->next;
while(p2)
{
data=p2->data;
p2->data=p1->data;
p1->data=data;
p1=p1->next;
p2=p2->next;
}
return head;
}
void print(List *head)
{
List *p;
p=head;
while(p)
{
printf("%d",p->data);
p=p->next;
}
}
int main()
{
List *head1;
List *head2;
head1=Creat();
head2=Inverse(head1);
print(head2);
}
#include<malloc.h>
typedef struct Node
{
int data;
struct Node *next;
}List;
List *Creat()
{
int N;
scanf("%d",&N);
List *head;
List *p1,*p2;
p1=p2=(List *)malloc(sizeof(List ));
head=p1;
while(N!=0)
{
p1->data=N%8;
N=N/8;
p2=p1;
p1=(List *)malloc(sizeof(List ));
p2->next=p1;
}
p2->next=NULL;
return head;
}
List *Inverse(List *head)
{
int data=0;
List *p1,*p2;
p1=head;
p2=p1->next;
while(p2)
{
data=p2->data;
p2->data=p1->data;
p1->data=data;
p1=p1->next;
p2=p2->next;
}
return head;
}
void print(List *head)
{
List *p;
p=head;
while(p)
{
printf("%d",p->data);
p=p->next;
}
}
int main()
{
List *head1;
List *head2;
head1=Creat();
head2=Inverse(head1);
print(head2);
}