目的: 每组信息包括学生编号和学生的成绩。
要求是:
(1)建立一个链表,每个节点记录一个学生的信息;
(2)按链表的顺序打印每个学生的信息;
(3)输入学生编号,进行查询,若链表中存在该编号,就输出相应的学生成绩;否则打印出"NO FOUND!"
#include "stdio.h"
#include "stdlib.h"
struct Node
{
int data; //编号
int score; //分数
struct Node*next;
};
//创建链表
struct Node*create( )
{
int i,data,score;
struct Node *p,*pre,*head; //*p临时节点,*pre表示当前节点,*head表示头节点
head =(struct Node*) malloc(sizeof(struct Node));
head->next=NULL;//头节点不需要数据域
pre=head; //当前节点为头节点
for (i=0;i<5;i++)
{
p = (struct Node*)malloc(sizeof(struct Node));
printf("请输入第%d个学生编号",i+1);
scanf("%d",&data);
p->data = data;
printf("请输入第%d个学生成绩",i+1);
scanf("%d",&score);
p->score=score;
p->next =NULL;
pre->next=