#include "stdio.h"
#include<malloc.h>
#include<string.h>
#define LEN sizeof(struct student)
struct student{
int num;
int score;
struct student*next;
};
struct student*create()
{
char ch;
struct student *head;
struct student*p1,*p2;
int a=0;
printf("是否输入新数据:(y/n)");
while(toupper(ch=getche())=='Y');//这个不是要输入输出y多次,输入输出多个num,score,
直到ch不等于y,但是为什么只有输入输出一次
{
p1=(struct student*)malloc(LEN);
printf("\n请输入:");
scanf("%d%d",&p1->num,&p1->score);
printf("是否输入新数据:(y/n)");
a++;
if(a==1) head=p1;
else p2->next=p1;
p2=p1;
p1->next=NULL;
}
return(head);
}
void print(struct student *head)
{
struct student *p;
p=head;
while(p!=NULL)
{
printf("\n学号:%d,成绩:%d",p->num,p->score);
p=p->next;
}
}
void main( ){
struct student *stu;
stu=create();
print(stu);
}
望远
相关分类