| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1105 人关注过本帖
标题:有大佬知道为什么我的链表输出不正确吗
只看楼主 加入收藏
铁甲
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2020-10-21
结帖率:80%
收藏
已结贴  问题点数:20 回复次数:1 
有大佬知道为什么我的链表输出不正确吗
程序代码:
#include <stdio.h>
#include <stdlib.h>
typedef struct _node{
    int value;
    struct _node *previous;
    struct _node *next;
} Node;
int main(void){
    Node *head=NULL;
    Node *tail=NULL;
    int j=1; 
    for(int number;scanf("%d",&number)==1&&number!=-1;){
        Node *Last=head;
        if(j==1){
            head=(Node *)malloc(sizeof (Node));
            head->value=number;
            head->next=NULL;
            head->previous=NULL;
            j++;
            break; 
        }
        else{
        for(;Last;Last=Last->next);
            Node *p=(Node *)malloc(sizeof (Node));
            Last->next=p; 
            p->value=number;
            p->next=NULL;
            p->previous=Last;
            tail=p;
        }
        }
    for(Node *i=head;i;i=i->next){
          printf( "%d\t", i->value );
    }    
    for(Node *k=tail;k;k=k->previous){
          printf( "%d\t", k->value );
    }    
    return 0;
    }
    
搜索更多相关主题的帖子: value next number Node NULL 
2020-11-29 17:17
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9031
专家分:54061
注 册:2011-1-18
收藏
得分:20 
程序代码:
#include <stdio.h>
#include <stdlib.h>

typedef struct _node {
    int value;
    struct _node* previous;
    struct _node* next;
} Node;

int main( void )
{
    Node* head = NULL;
    Node* tail = NULL;
    for( int number; scanf("%d",&number)==1 && number!=-1; )
    {
        Node* p = malloc(sizeof(Node));
        p->value = number;
        p->next = NULL;

        if( !tail )
        {
            p->previous = NULL;
            head = tail = p;
        }
        else
        {
            p->previous = tail;
            tail->next = p;
            tail = p;
        }
    }

    for( const Node* p=head; p; p=p->next )
        printf( "%d\t", p->value );

    for( const Node* p=tail; p; p=p->previous )
        printf( "%d\t", p->value );
}
2020-11-30 09:07
快速回复:有大佬知道为什么我的链表输出不正确吗
数据加载中...
 
   



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

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