//创建单链表
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
typedef struct Student STU; //用typedef 新定义结构体名字为 STU;
struct Student //定义时不能直接用STU
{
char name[20];
float score;
STU* next;// 定义指向结构体的指针
};
#include <string.h>
#include <stdlib.h>
typedef struct Student STU; //用typedef 新定义结构体名字为 STU;
struct Student //定义时不能直接用STU
{
char name[20];
float score;
STU* next;// 定义指向结构体的指针
};
int main()
{
STU a, b, c, *P, *head;
strcpy(a.name, "pan");
a.score = 90;
strcpy(b.name, "pan1");
b.score = 96;
strcpy(c.name, "pan2");
c.score = 93;
head = &a;
P = head;
a.next = &b;
b.next = &c;
c.next = NULL;
{
STU a, b, c, *P, *head;
strcpy(a.name, "pan");
a.score = 90;
strcpy(b.name, "pan1");
b.score = 96;
strcpy(c.name, "pan2");
c.score = 93;
head = &a;
P = head;
a.next = &b;
b.next = &c;
c.next = NULL;
/* do
{
printf("%s %5.1f", P->name, P->score);
P = P->next;
} while (P != NULL);
{
printf("%s %5.1f", P->name, P->score);
P = P->next;
} while (P != NULL);
*/
while (P != NULL)
{
printf("%s %5.1f", P->name, P->score);
P = P->next;
};
while (P != NULL)
{
printf("%s %5.1f", P->name, P->score);
P = P->next;
};
/* 注if的条件判断只会执行一次,While 的条件才会循环判断。
if (P != NULL)
{
printf("%s %5.1f", P->name, P->score);
P = P->next;
}
*/
return 0;
}