回 帖 发 新 帖 刷新版面

主题:[讨论]真的老了,脑子坏了,怎么改呢?大家帮帮忙哈!

#include <stdio.h>
#include <conio.h>
#include <alloc.h>
typedef struct node
{
   int data;
   struct node *link;
}LNode

LNode *createtail()
{ LNode *s,*h,*r;
  int x,tag;
  printf("输入结束标志:");
  scanf("%d",&tag);
  h=(LNode*)malloc(sizeof(LNode));
  h->data=tag;
  r=h;
  printf("输入数据x:");
  scanf("%d",&x);
  while(x!=tag)
  { s=(LNode*)malloc(sizeof(LNode));
    s->data=x;
    r->link=s;
    r=s;
    scanf("%d",&x);
  }
  r->link=null;
  return h;
}

void main()
{
   LNode *t;
   printf("Please create a list now.\n");
   t=createtail();
}

回复列表 (共7个回复)

沙发

typedef struct node
{
   int data;
   struct node *link;
}LNode;                  ///别遗漏了分号
...
...
   scanf("%d",&x);
  }
  r->link=null;         //表示空需要的是NULL而不是null
  return h;
}

板凳


据我所知,结构体定义是不用分号的,还有NULL和null在我所用的版本是通用的。

3 楼

郁闷,用另一个版本的就行。我的版本有问题。不管怎样,谢谢你了。

4 楼

[quote]
据我所知,结构体定义是不用分号的,还有NULL和null在我所用的版本是通用的。[/quote]
如果你这样认为得话,也许你该好好看看书,或是我该好好看。。。

5 楼


这位“老“先生到底遇到什么问题了?
结构体后面当然要加分号,这个都忘了也确实是不该,但是一编译不就知道了么
另外你说的版本问题是什么啊?你用的vc么?这样的程序,又没有很特别的地方,版本应该不是问题罢?
还有你引用的第二个头文件用到了么?

6 楼


要注意观察,还有一个问题就是头文件,#include <alloc.h>???#include <malloc.h>这样就ok!!仔细点哦。大家一起努力。

7 楼

呵呵,大家不要笑我哈,我才20岁,还年轻呢,只是脑子有点老了啊,我回去看了几天书,的确是我错了。谢谢大家咯,大家一起努力,加油!

我来回复

您尚未登录,请登录后再回复。点此登录或注册