谁会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;
}
#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
如何?
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息