| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1577 人关注过本帖
标题:用动态链表存放学生信息
只看楼主 加入收藏
Karryu
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2016-5-5
结帖率:90%
收藏
已结贴  问题点数:10 回复次数:4 
用动态链表存放学生信息
建立动态链表,想让输入号码时可以输出对应的数据


#include <stdio.h>
#include <stdlib.h>
#define LEN sizeof(struct student)
struct student
{
 long num;
 char name;
 float score[3];
 struct student *next;
};

int n;

struct student *creat()
{
 struct student *p1,*p2,*head;
 void put(struct student *t)
 p1=p2=(struct student *)malloc(LEN);
 put(p1);
 head=NULL;
 n=0;
 while(p1->num!=0)
 {n++;
  if(n==1) head=p1;
  else p2->next=p1;
  p2=p1;
  p1=(struct student *)malloc(LEN);
  put(p1);
 }
 p2->next=NULL;
 return head;
}

void put(struct student *t)
{
 printf("please enter num:\n");
 scanf("%ld",&t->num);
 printf("please enter name:\n");
 scanf("%s",&t->name);
 printf("please enter score:\n");
 scanf("%f %f %f",&t>score[0],&t->score[1],&t->score[2]);
}

int i,j;

void print(struct student *head)
{
 struct student *p;
 printf("your number:\n");
 scanf("%ld",&i);
 p=head;
 do
 {if(p->num==i)
 {printf("%ld,%s,%f,%f,%f",p->num,p->name,p->score[0],p->score[1],p->score[2]);
  break;
  }
 else p->next;
}while(p!=NULL);
}
void main()
{
 struct student *head;
 head=creat();
 print(head);
}

不知道是什么问题,只要用到结构体变量,程序运行的时候就会出现assess violation
就算是按着书上动态链表的编程打也会出现这样的情况


搜索更多相关主题的帖子: include 动态 信息 
2016-05-29 12:44
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:10 
先改错句:
void put(struct student *t)

void put(struct student *t);

scanf("%f %f %f",&t>score[0],&t->score[1],&t->score[2]);

scanf("%f %f %f",&t->score[0],&t->score[1],&t->score[2]);
2016-05-29 13:45
Karryu
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2016-5-5
收藏
得分:0 
回复 2楼 吹水佬
这个应该是在网页上重新打出来时候没注意。用vc 6.0编写的时候没检查出错误,但就是一运行就不行了是什么原因
2016-05-29 14:30
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
回复 3楼 Karryu
我改了那两句后启动无异常。
2016-05-29 15:26
Karryu
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2016-5-5
收藏
得分:0 
回复 4楼 吹水佬
可是运行到your num: 输入后就assess violation了
2016-06-02 18:37
快速回复:用动态链表存放学生信息
数据加载中...
 
   



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

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