c语言:写一个程序建立一个含有学生(学号成绩)数据的单向动态链表(我是个初学者希望可以解释清楚点)
c语言:写一个程序建立一个含有学生(学号成绩)数据的单向动态链表(我是个初学者希望可以解释清楚点)这是我写的,哪里错了希望可以指点出来,谢谢。#include<stdio...
c语言:写一个程序建立一个含有学生(学号成绩)数据的单向动态链表(我是个初学者希望可以解释清楚点)这是我写的,哪里错了希望可以指点出来,谢谢。
#include<stdio.h>
struct student
{
long int num;
float score;
struct student *next;
}a;
void main()
{
int n=0;
struct student *p1,*p2,*head=NULL;
scanf ("%ld%lf",&a.num,&a.score);
p1=&a;
while (p1->num!=0) /*学号输入0时退出程序*/
{
n=n+1;
if (n==1)
{
head=p1;
}
else
{
p2->next=p1;
}
p2=p1;
scanf ("%ld%lf",&a.num,&a.score);
p1=&a;
}
p2->next=NULL;
do
{
printf("%ld%5.1lf\n",head->num,head->score);
head=head->next;
}
while (head);
} 展开
#include<stdio.h>
struct student
{
long int num;
float score;
struct student *next;
}a;
void main()
{
int n=0;
struct student *p1,*p2,*head=NULL;
scanf ("%ld%lf",&a.num,&a.score);
p1=&a;
while (p1->num!=0) /*学号输入0时退出程序*/
{
n=n+1;
if (n==1)
{
head=p1;
}
else
{
p2->next=p1;
}
p2=p1;
scanf ("%ld%lf",&a.num,&a.score);
p1=&a;
}
p2->next=NULL;
do
{
printf("%ld%5.1lf\n",head->num,head->score);
head=head->next;
}
while (head);
} 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询