#include <stdio.h>
#include <stdlib.h>
#include<string.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
typedef struct packmembers
{
char name[15];
int number;
int money;
struct packmembers*next;//指针域
}members;
members *listhead;
members *listend;
void addmembers(char *name,int number,int money)
{
members *temp=(members*)malloc(sizeof(members));//用malloc给temp分配内存
strcpy(temp->name,name);//temp 是一个新节点
temp->money=money;
temp->number=number;
if(listhead==NULL&&listend==NULL)
{
listhead=temp;
listend=temp;
}
else
{
listend->next=temp;
listend=temp;
}
temp->next=NULL;
}
void showmembers()
{
members *temp=listhead;
while(temp!=NULL)
{
printf("姓名:%s\n",temp->name);
printf("工号:%d\n",temp->number);
printf("工资:%d\n",temp->money);
printf("------------------------------------------\n");
temp=temp->next;
}
}
void revisemembers(int number)
{
members *temp=listhead;
while(temp!=NULL)
{
if(temp->number==number)
{
char name[15];
int number;
int money;
printf("输入修改后成员的名字:\n");
scanf("%s",name,15);
printf("输入修改后成成员的工资:\n");
scanf("%d",&money);
strcpy(temp->name,name);
temp->money=money;
printf("修改成功!\n");
temp=temp->next;
}
else
{
printf("本系统中没有找到该员工的信息!\n");
break;
}
}
}
void inquiremembers(int number)
{
members *temp=listhead;
while(temp!=NULL)
{
if(temp->number==number)
{
printf("姓名:%s\n",temp->name);
printf("工号:%d\n",temp->number);
printf("工资:%d\n",temp->money);
printf("查询成功!\n");
temp=temp->next;
}
else
{
printf("本系统中没有找到该员工的信息!\n");
break;
}
}
}
void deletemembers(int number)
{
members *temp=listhead;
members *prepoint=NULL;
while(temp!=NULL)
{
if(temp->number==number)
{
if(temp==listhead)
{
listhead=temp->next;
temp->next=NULL;
free(temp);//释放内存空间;
}
else if(temp==listend)
{
listend=prepoint;
prepoint->next=NULL;
free(temp);
}
else
{
prepoint->next=temp->next;
temp->next=NULL;
free(temp);
}
printf("删除成功!\n");
}
prepoint=temp;
temp=temp->next;
}
}
int main(int argc, char *argv[])
{
char a[5],b[5];
printf("是否有该软件的账号:yes or no\n");
scanf("%s",&a);
if(strcmp(a,"no")==0)
{
printf("注册\n");
}
printf("登录\n");
printf("是否为管理员:yes or no\n");
scanf("%s",&b);
if(strcmp(b,"yes")==0)
{
while(1)
{
system("cls");
int x=-1;
printf("请选择选项:\n");
printf("0.退出系统\n");
printf("1.员工管理\n");
printf("2.考勤管理\n");
printf("3.绩效管理\n");
printf("4.薪资管理\n");
scanf("%d",&x);
switch(x)
{
case 0:
{
printf("欢迎下次使用本系统\n");
return 1;
break;
}
case 1:
{
while(1)
{
system("cls");
int y;
printf("进入员工信息管理界面:\n");
printf("64.退出员工信息管理界面:\n");
printf("65.录入员工信息\n");
printf("66.修改员工信息\n");
printf("67.显示全部员工信息\n");
printf("68.查询员工信息\n");
printf("69.删除员工信息\n");
scanf("%d",&y);
switch(y)
{
case 64:
{
printf("已退出员工信息管理界面,欢迎下次使用本系统!\n");
return 1;
break;
}
case 65:
{
char name[15];
int number;
int money;
printf("输入成员的名字:\n");
scanf("%s",name,15);
printf("输入成员的工号:\n");
scanf("%d",&number);
printf("输入成员的工资:\n");
scanf("%d",&money);
addmembers(name,number,money);
printf("录入成功!\n");
break;
}
case 66:
{
int number;
printf("输入想要修改的员工工号:\n");
scanf("%d",&number);
revisemembers(number);
break;
}
case 67:
{
printf("显示全部员工信息:\n");
showmembers();
break;
}
case 68:
{
int number;
printf("输入想要查询的员工工号:\n");
scanf("%d",&number);
inquiremembers(number);
break;
}
case 69:
{
int number;
printf("输入想要删除的员工工号:\n");
scanf("%d",&number);
deletemembers(number);
break;
}
default:
{
printf("输入有误,请重新输入!\n");
break;
}
}
system("pause>0");
}
break;
}
case 2:
{
system("cls");
char name;
int number;
printf("进入考勤管理界面:\n");
printf("请输入员工信息:姓名\t工号\n");
scanf("%s%d",&name,&number);
break;
}
case 3:
{
system("cls");
printf("进入绩效管理界面:\n");
break;
}
case 4:
{
system("cls");
int y;
printf("进入薪资管理界面:\n");
break;
}
default:
{
printf("输入的数字有误,请重新输入!\n");
break;
}
}
system("pause>0");
}
}
else
{
printf("仅能查看员工信息\n");
}
printf("返回主页面,欢迎再次使用本系统!\n");
return 0;
}
c语言实现公园系统
最新推荐文章于 2024-09-15 22:05:05 发布