链表.c(12) : error C2236: unexpected 'struct' 'star'是怎么回事啊,求高手帮忙。

#include<stdlib.h>#include<stdio.h>#include<conio.h>structstar{charname[12];charsex[2... #include<stdlib.h>
#include<stdio.h>
#include<conio.h>
struct star
{
char name[12];
char sex[2];
int age;
char xingzuo[12];
struct star *nextstar;
}
struct star *creat(struct star *h);
void printstar(struct star *h);
main()
{
int n;
struct star *head;
head=NULL;
printf("请输入明星的个数:\n");
scanf("%d",&n);
printf("请输入明星的信息:姓名、性别、年龄、星座\n");
head=creat(head);
printstar(head);

}
struct star *creat(struct star *h)
{
struct star *p1,*p2;
p1=p2=(struct star*)malloc(sizeof(struct star));
if(p2!=NULL)
{
scanf("%s%s%d%s",&p2->name,&p2->sex,&p2->age,&p2->xingzuo);
p2->nextstar=NULL;
}
while(p2->name[0]!='#')
{
if(h==NULL)
h=p2;
else
p1->nextstar=p2;
p1=p2;
p2=(struct star*)malloc(sizeof(struct star));
if(p2!=NULL)
{
scanf("%s%s%d%s",&p2->name,&p2->sex,&p2->age,&p2->xingzuo);
p2->nextstar=NULL;
}
}
return h;
}
void printstar(struct star *h)
{
struct star *temp;
temp=h;
while(temp!=NULL)
{
printf("%s\t%s\t%d\t%s",temp->name,temp->sex,temp->age,temp->xingzuo);
temp=temp->nextstar;
}
}
展开
 我来答
百度网友7eff2e0
2012-05-05 · TA获得超过1043个赞
知道小有建树答主
回答量:787
采纳率:80%
帮助的人:531万
展开全部
你定义的struct star{...}后少一个分号,如下注释的那一行
#include<stdlib.h>
#include<stdio.h>
#include<conio.h>
struct star
{
char name[12];
char sex[2];
int age;
char xingzuo[12];
struct star *nextstar;
} ///《《======================少分号!!
struct star *creat(struct star *h);
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式