标题:单链表插入显示--大家指点一下
只看楼主
zhangkailang
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-11-14
得分:0 
#include<stdio.h>
#include<stdlib.h>
struct data{
    int num;
    struct data *forward;
};

struct data *ptr, *newelement, *record, *head;
main()
{
       int i;
       head=(struct data *)calloc(1,sizeof(struct data));
       head=NULL;
   
    record=head;
    for(i=0;i<5;i++){
        newelement=(struct data *)calloc(1,sizeof(struct data));
            
        newelement->forward=record;
        record=newelement;
        newelement->num=i;

        
    }
    ptr=record;
    while(ptr!=NULL){
        printf("%d\n",ptr->num);
        ptr=ptr->forward;
    }

return 0;
}
2008-11-17 21:01
zhangkailang
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-11-14
得分:0 
指针发生了错误啊
2008-11-17 21:03
jdshaoheyi
Rank: 1
等 级:新手上路
帖 子:133
专家分:5
注 册:2008-11-6
得分:0 
错误的地方我已经写出来了,就是一点!!!

#include<stdio.h>
#include<stdlib.h>


typedef struct data
{
    int num;
    struct data *forward;
}Linklist;


Linklist *ptr, *newelement, *record, *head;


main()
{
       int i;
       head=( Linklist *)malloc(sizeof(Linklist));
       head->forward=NULL; //创建头结点
   
       record=head;
   
       
       for(i=0;i<5;i++)    //*******************************************创建链表
       {
        newelement=(Linklist *)malloc(sizeof(Linklist));
           
        newelement->num=i;   
      
        newelement->forward=record;
      
        record=newelement;
      

        //record=head; 这一赋值语句是不对的!
       }
      
       head=record;  //不对的那一句应该放在这里才对

       ptr=head;
   
       printf("***********************");
       while(!(ptr->forward==NULL) )//*****************************输出链表
       {
         printf("\n%d\n",ptr->num);
         ptr=ptr->forward;
       }

return 0;
}
2008-11-18 11:30
jdshaoheyi
Rank: 1
等 级:新手上路
帖 子:133
专家分:5
注 册:2008-11-6
得分:0 
#include<stdio.h>
#include<stdlib.h>


typedef struct data
{
    int num;
    struct data *forward;
}Linklist;


Linklist *ptr, *newelement, *record, *head;


main()
{
       int i;
       head=( Linklist *)malloc(sizeof(Linklist));
       head->forward=NULL; //创建头结点
   
       record=head;
   
       
       for(i=0;i<5;i++)    //*******************************************创建链表
       {
        newelement=(Linklist *)malloc(sizeof(Linklist));
           
        newelement->num=i;   
      
        newelement->forward=record;
      
        record=newelement;
      

        //record=head; 这一赋值语句是不对的!
       }
      
       head=record;  //不对的那一句应该放在这里才对

       ptr=head;
   
       printf("***********************");
       while(!(ptr->forward==NULL) )//*****************************输出链表
       {
         printf("\n%d\n",ptr->num);
         ptr=ptr->forward;
       }

return 0;
}
2008-11-18 11:32
jdshaoheyi
Rank: 1
等 级:新手上路
帖 子:133
专家分:5
注 册:2008-11-6
得分:0 
不小心回复了两次,不好意思!~ ~  ~ ~ ~ ~ ~
2008-11-18 11:33



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




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

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