本人初学乍到,欢迎提出各种意见
#include <stdio.h>
#include <conio.h>
typedef struct student
{
float score;
struct student *link;
}NODE;
void main()
{
/*创建链表*/
NODE *head,*p1,*p2,*p;
int n = 0,i=0;
int flag;/*标记是否继续输入,0为停止输入*/
float average =0.00;
p1=p2=(NODE *)malloc(sizeof(NODE));
head = NULL;
printf("Please input score:\n");
scanf("%f",&p2->score);
do
{
n++;
if(n==1)
{
head = p1;
}
p1->link= p2;
p1=p2;
printf("Whether to continue(1.yes\t0.no):\n");
scanf("%d",&flag);
if(flag)
{
p2 =(NODE *)malloc(sizeof(NODE));
printf("Please input score:\n");
scanf("%f",&p2->score);
}
}while(flag != 0);
p1->link = NULL;
p=head;
while(p!=NULL)
{
average+=p->score;
p=p->link;
i++;
}
printf("This is score:%.2f",average/i);
getch();
}