The program was compiled normally,but catch below error while runing it.
#include <malloc.h>
#define NULL 0
#define LEN sizeof(struct student)
struct student
{
int num;
float score;
struct student *next;
};
main()
{
struct student *creat(void);
void print(struct student *);
struct student *p;
p = creat();
print(p);
}
struct student * creat(void)
{
struct student *head,*p1,*p2;
int n=0;
p1 = p2 = (struct student *) malloc(LEN);
scanf("%d,%f", &p1->num, &p1->score);
head = NULL;
while(p1->num != 0)
{
++n;
if (n==1)
head = p1;
else
p2->next = p1;
p2 = p1;
p1 = (struct student *)malloc(LEN);
scanf("%d,%f", &p1->num, &p1->score);
}
p2->next = NULL;
return head;
}
void print(struct student *p)
{
while(p != NULL)
{
printf("num: %d\tscore: %.2f\n", p->num, p->score);
p = (*p).next;
}
}
The program was compiled normally,but catch below error while runing it.
floating point formats not linked
Abnormal program termination.