程序报错不知错在哪儿
E:\Users\lrc\Documents\C语言学习文件\建立并输出链表.cpp(53) : error C2601: 'newnode_record' : local function definitions are illegalE:\Users\lrc\Documents\C语言学习文件\建立并输出链表.cpp(66) : error C2601: 'listall' : local function definitions are illegal
E:\Users\lrc\Documents\C语言学习文件\建立并输出链表.cpp(74) : fatal error C1004: unexpected end of file found
就是这个报错,错在哪儿呢
#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>
typedef struct student
{
int num;
char name[20];
char sex;
int age;
struct student *next;
}STU;
void main()
{
STU *head,*tail,*pf;
STU *newnode_record();
void listall(STU *L);
head=tail=0;
char st;
printf("请输入的一个字母:\n");
st=getchar();
while(1)
{
if(st=='e'||st=='E')
{
pf=newnode_record();
if(head==0)
{head=pf;}
else
{tail->next=pf;}
tail=pf;
printf("请再输入的一个字母:\n");
st=getchar();
break;
}
else if(st=='l'||st=='L')
{
listall(head);
printf("请再输入的一个字母:\n");
st=getchar();
break;
}
else
{
printf("非法字母!!!");
break;
}
}
STU *newnode_record()
{
STU *newnode;
int size=sizeof(STU);
newnode=(STU *) malloc(size);
scanf("%d",&newnode->num);
scanf("%s",newnode->name);
getchar();
scanf("%c",&newnode->sex);
scanf("%d",&newnode->age);
newnode->next=0;
return(newnode);
}
void listall(STU *L)
{
STU *p=L;
while(p!=0)
{
printf("%d %s %c %d",p->num,p->name,p->sex,p->age);
p=p->next;
}
}