标题:用线性表存放二进制数,每个节点存放一个二进制位,最后实现二进制数加一
取消只看楼主
humeng
Rank: 1
等 级:新手上路
帖 子:18
专家分:4
注 册:2016-10-10
结帖率:40%
 问题点数:0 回复次数:1 
用线性表存放二进制数,每个节点存放一个二进制位,最后实现二进制数加一
#include<stdio.h>
#include<stdlib.h>
typedef struct aa
{
    int data;
    struct aa *prior,*next;
}LinkList;
LinkList *Int()
{
    LinkList *head,*s,*r;
    head=(LinkList*)malloc(sizeof(LinkList));
    r=head;
    int a;
    scanf("%d",&a);
    while(a!=2)
    {
        s=(LinkList*)malloc(sizeof(LinkList));
        s->data=a;
        r->next=s;
        s->prior=r;
        r=s;
        scanf("%d",&a);
    }
    r->next=head;
    head->prior=r;
    return head;
}
LinkList *sum1(LinkList *L)
{
    LinkList *p,*r;
    r=L;
    p=L->prior;
    int sum;
    sum=p->data+1;
    while(sum==2)
    {
        if(p!=L)
        {
            p->data=0;
            p=p->prior;
        }
        sum=p->data+1;
    }
    return r;
}
int main()
{
    LinkList *H,*G,*p;
    H=Int();
    G=sum1(H);
    p=H->next;
    for(;p!=G;p=p->next)
        printf("%d",p->data);
    printf("\n");
    return 0;
}
//我输入一个二进制数后,不知道为什么显示不出结果,求大神指点错误
搜索更多相关主题的帖子: include return 二进制 线性表 
2016-10-11 21:12
humeng
Rank: 1
等 级:新手上路
帖 子:18
专家分:4
注 册:2016-10-10
得分:0 
回复 4楼 word123
谢谢大神,我明白了
2016-10-13 13:06



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-469639-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.038760 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved