中易网

谁会C语言课设设计:健身俱乐部会员卡管理系统

答案:2  悬赏:80  
解决时间 2021-01-18 05:15
  • 提问者网友:原来太熟悉了会陌生
  • 2021-01-17 18:24
谁会C语言课设设计:健身俱乐部会员卡管理系统
最佳答案
  • 二级知识专家网友:神也偏爱
  • 2021-01-17 19:42
#include
#include
#include
#include

typedef struct
{
char No[20];
char name[20];
char sex[20];
char birth[20];
char title[20];
char pay[20];
} INFO;

INFO *s=NULL;
int count=0;
char work_path[100];
char data_path[100];

void GetData() //文件获取数据
{

count=GetPrivateProfileInt("INFO","COUNT",0,data_path);
if(s!=NULL)
{
free(s);
}
count++;
s=(INFO*)malloc(sizeof(INFO)*count);
char t[5];
int i;
for(i=0;i{
memset(t,'\0',5);
sprintf(t,"%d",i+1);
GetPrivateProfileStringA(t,"No","",s[i].No,20,data_path);
GetPrivateProfileStringA(t,"name","",s[i].name,20,data_path);
GetPrivateProfileStringA(t,"sex","",s[i].sex,20,data_path);
GetPrivateProfileStringA(t,"birth","",s[i].birth,20,data_path);
GetPrivateProfileStringA(t,"title","",s[i].title,20,data_path);
GetPrivateProfileStringA(t,"pay","",s[i].pay,20,data_path);
}
memset(s[count-1].No,'\0',20);
}

void WriteData() //写数据文件
{
char t[5]={'\0'};
sprintf(t,"%d",count);
WritePrivateProfileString("INFO","COUNT",t,data_path);
int i;
for(i=0;i{
if(strcmp(s[i].No,"")==0)
{
continue;
}
memset(t,'\0',5);
sprintf(t,"%d",i+1);
WritePrivateProfileStringA(t,"No",s[i].No,data_path);
WritePrivateProfileStringA(t,"name",s[i].name,data_path);
WritePrivateProfileStringA(t,"sex",s[i].sex,data_path);
WritePrivateProfileStringA(t,"birth",s[i].birth,data_path);
WritePrivateProfileStringA(t,"title",s[i].title,data_path);
WritePrivateProfileStringA(t,"pay",s[i].pay,data_path);
}
}

void Input() //产品信息录入
{
char sel;
while(1)
{
system("cls");
printf("请输入职工编号: ");
scanf("%s",s[count-1].No);
printf("请输入职工姓名: ");
scanf("%s",s[count-1].name);
printf("请输入职工性别: ");
scanf("%s",s[count-1].sex);
printf("请输入月: ");
scanf("%s",s[count-1].birth);
printf("请输入职工职称: ");
scanf("%s",s[count-1].title);
printf("请输入职工工资: ");
scanf("%s",s[count-1].pay);
WriteData();
GetData();
printf("\n产品录入功!\n\n继续? (y/n) : ");
fflush(stdin);
scanf("%c",&sel);
if(sel=='y' || sel=='Y')
{
continue;
}
else
{
break;
}
}
}

void Display() //产品信息浏览
{
system("cls");
int i;
if(strcmp(s[0].No,"")==0)
{
printf("没数据!\n");
fflush(stdin);
getchar();
return;
}
for(i=0;i{
printf("%d/%d :\n",i+1,count-1);
printf("职工编号: %s\n",s[i].No);
printf("职工姓名: %s\n",s[i].name);
printf("职工性别: %s\n",s[i].sex);
printf("月: %s\n",s[i].birth);
printf("职工职称: %s\n",s[i].title);
printf("职工工资: %s\n\n",s[i].pay);
}
fflush(stdin);
getchar();
}

void Sort() //排序
{
int i,j;
INFO t;
if(count>2)
{
int a,b;
for(i=0;i{
for(j=i;j{
a=atoi(s[j].No);
b=atoi(s[j+1].No);
if(a>b)
{
t=s[j];
s[j]=s[j+1];
s[j+1]=t;
}
}
}
}
printf("\n\n排序功!");
fflush(stdin);
getchar();
}

void Search() //查找
{
system("cls");
printf("请输入要查询职工编号: ");
char temp[20];
fflush(stdin);
scanf("%s",&temp);
int find=0;
printf("\n");
int i;
for(i=0;i{
if(strcmp(temp,s[i].No)==0)
{
printf("职工编号: %s\n",s[i].No);
printf("职工姓名: %s\n",s[i].name);
printf("职工性别: %s\n",s[i].sex);
printf("月: %s\n",s[i].birth);
printf("职工职称: %s\n",s[i].title);
printf("职工工资: %s\n\n",s[i].pay);
find++;
}
}
if(find==0)
{
printf("No Infor!\n");
}
else
{
printf("共找 %d 条信息\n",find);
}
fflush(stdin);
getchar();
}

void Del()
{
system("cls");
printf("请输入要删除职工编号: ");
char temp[20]={'\0'};
scanf("%s",temp);
int i,find=0;
for(i=0;i{
if(strcmp(temp,s[i].No)==0)
{
find=1;
if(count==1)
{
count=0;
strcpy(s[i].No,"");
break;
}
INFO t;
int j;
for(j=i;j{
s[j]=s[j+1];
}
count-=2;
break;
}
}
if(find==1)
{
WriteData();
printf("\n\n已删除!");
GetData();
}
else
{
printf("\n\n未找该信息!");
}
fflush(stdin);
getchar();
}

void Menu() //主菜单
{
int sel;
while(1)
{
system("cls");
printf("1. 职工信息录入\n");
printf("2. 全部信息浏览\n");
printf("3. 按职工号查寻\n");
printf("4. 职工信息删除\n");
printf("5. 职工编号排序\n");
printf("6. 退\n\n");
printf("请输入(1-6): ");
scanf("%d",&sel);
switch(sel)
{
case 1:
Input();
break;
case 2:
Display();
break;
case 3:
Search();
break;
case 4:
Del();
break;
case 5:
Sort();
break;
case 6:
exit(0);
default:
continue;
break;
}
}
}

int main()
{
getcwd(work_path,100); //取前程序绝路径
strcpy(data_path,work_path);
strcat(data_path,"\\data.dat"); //设置数据文件绝路径
GetData();
Menu();
return 0;
}
全部回答
  • 1楼网友:末日狂欢
  • 2021-01-17 20:48
如何?
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息