求救🆘这个错误怎么改⁉️

img

“link”定义出现了问题,你的那行仔细看一下有没有问题

#include<stdio.h>
#include<string.h>
#include<malloc.h>
struct worker
{
	int no;
	char name[50];
	int sex;
	int xueli;
	int wage;
	int tel;
	struct  worker *next;//录入
};
void setdata(struct worker *temp)
{
	printf("请输入职工号\n");
	scanf("%d",&temp->no);
	printf("请输入姓名\n");
	scanf("%s",&temp->name);
	printf("请输入性别\n");
	scanf("%d",&temp->sex);	
	printf("请输入学历\n");
	scanf("%s",&temp->xueli);
	printf("请输入工资\n");
	scanf("%d",&temp->wage);
	printf("请输入电话\n");
	scanf("%s",&temp->tel);	
}
struct worker *createlink()//浏览
{
	struct worker *head,*p,*q;
	head=(struct worker *)malloc(sizeof(struct worker));
	head->next=NULL;
	p=head;
	q=(struct worker *)malloc(sizeof(struct worker));
	setdata(q);
	while(q->no!=0)
	{
		p->next=q;
		p=q;
		q=(struct worker *)malloc(sizeof(struct worker));
		setdata(q);
	}
	p->next=NULL;
	return head;
}
void printlink(struct worker *head)
{
	struct worker *p;
	for(p=head->next;p!=NULL;p=p->next)
	{
		printf("%d%s%d%s%d%s",p->no,p->name,p->sex,p->xueli,p->wage,p->tel);
		printf("\n");
	}
}
void print(struct worker *p)
{
	printf("%d%s%d",p->no,p->name,p->sex,p->xueli,p->wage,p->tel);
}
struct worker *find1(struct worker *head,int num)//查询
{
//按工号查询
	struct worker *p;
	p=head->next;
	while(p->no!=num)
	{
		p=p->next;
	}
	return p;
}
struct worker *find2(struct worker *head,char name[50])
{
//按姓名查询
		struct worker *p;
	p=head->next;
	while(strcmp(p->name,name)!=0)
	{
		p=p->next;
	}
	return p;
}
void deletexs(struct worker *head,struct worker *p)//删除
{
	struct worker *q;//q指向p前面那个节点
	for(q=head->next;q->next!=p;q=q->next);
	q->next=p->next;
	free(p);
}
void xiugai(struct worker*p)//修改
{
	int wage;
	printf("请输入修改的工资\n");
	scanf("%d",wage);
	strcpy(p->wage,wage);
	printf("已修改\n");
}
void maina()
{
	struct worker *head;
	printf("职工系统功能\n");
		printf("1.职工信息录入\n");
		printf("2.职工信息浏览\n");
		printf("3.职工信息查询\n");
		printf("4.职工信息删除\n");
		printf("5.职工信息修改\n");
		printf("6.退出\n");
		while(true)
		{
			struct worker *p;
			char c=getchar();
			if(c=='1')
			{
				printf("进入职工信息录入功能\n");
				head=createlink();
			};
			if(c=='2')
			{
				printf("进入职工信息浏览功能");
				printlink(head);
			};
				if(c=='3')
			{
				printf("进入职工信息查询功能\n");
				printf("按工号查询请输入1\n");
				printf("按姓名查询请输入2\n");
				int d;
				scanf("%d",&d);
				if(d==1)
				{
					printf("请输入学历\n");
					int xueli;
					scanf("%s",&xueli);
					p=find1(head,xueli);
					print(p);
				};
				if(d==2)
				{
					printf("请输入姓名\n");
					char name[50];
					scanf("%s",name);
					p=find2(head,name);
					print(p);
				};

			};
			if(c=='4')
			{
				//按职工姓名删除
				printf("请输入要删除职工的姓名\n");
				char name[50];
					scanf("%s",name);
					p=find2(head,name);
					deletexs(head,p);
					printf("该学生信息已删除\n");
					printlink(head);
			};
				if(c=='5')
			{
				printf("请输入修改工资职工的学历\n");
				int xueli;
				scanf("%s",&xueli);
				p=find1(head,xueli);
				xiugai(p);
				printlink(head)

			;};
			if(c=='6')
			{
				break;
			};
		}
}