本文实例为大家分享了C语言实现会员管理系统的具体代码,供大家参考,具体内容如下
会员信息包括:会员号(6位数,唯一),姓名,身份证号,联系电话,状态(1表示正常,0表示挂失)。
会员管理包括:会员的添加、删除、修改(会员号不能修改)、挂失、查询、接触挂失。
先给大家看看效果:







上代码:
#include
#include
#include
struct VIP //定义结构体,存储会员账号、姓名、身份证号、联系方式、状态、余额
{
long no;
char name[20]; //姓名、身份证号含有字符,使用char定义
char IDcard[19];
char phone[12]; //联系电话有11位,超出了int的范围,使用字符串定义
int zhuangtai; //如果状态为1,则正常,若为0,则状态为挂失
int yue;
};
struct VIP s[50]; //定义结构体数组
int n=0; //n表示存入的会员数量
void init(); //含义见main主函数
void print();
struct VIP gete();
void add1();
void findbyno();
void findbyname();
void findbyIDcard();
void findbyphone();
void mod();
void del();
void sort();
void transaction();
void init() //初始化(唯一的6位会员账号)
{
int f=1; //1唯一 0不唯一
printf("请输入会员的账号,姓名,身份证号码,联系电话,余额,状态\n");
printf("当输入会员号为0时停止输入\n");
while(n<=50)
{
printf("请输入会员的账号:\n");
scanf("%ld",&s[n].no);
while(s[n].no!=0)
{
if(s[n].no/1000000==0 && s[n].no/100000!=0)
{
int i;
for(i=0;in+1)
{
printf("您输入的位置有误!\n");
printf("请重新输入要插入的位置(1-%d):\n",n);
scanf("%d",&i);
}
for(int j=n-1;j>=i-1;j--)
{
s[j+1]=s[j];
}
s[i-1]=e;
n++;
}
void findbyno() //根据会员账号查找会员信息
{
int num,i;
int found=1;
char choice;
while(1)
{
printf("请输入要查找的会员的账号:\n");
scanf("%d",&num);
getchar();
for(i=0;is[j].no)
{
temp=s[i];
s[i]=s[j];
s[j]=temp;
}
}
}
printf("\n排序后的会员信息:\n");
}
int main()
{
int opt;
printf(" |*============================================*|\n");
printf(" |* 欢迎使用会员管理系统 *|\n");
printf(" |*============================================*|\n");
printf(" |* 1.初始化 *|\n");
printf(" |* 2.添加新的会员记录 *|\n");
printf(" |* 3.修改已有会员记录/挂失 *|\n");
printf(" |* 4.根据账号查询已有会员记录 *|\n");
printf(" |* 5.根据姓名查询已有会员记录 *|\n");
printf(" |* 6.根据身份证号查询已有会员记录 *|\n");
printf(" |* 7.根据联系电话查询已有会员记录 *|\n");
printf(" |* 8.删除已有会员记录 *|\n");
printf(" |* 9.根据会员账号排序并显示 *|\n");
printf(" |* 10.会员消费或充值 *|\n");
printf(" |* 0.退出会员信息管理系统 *|\n");
printf(" |*============================================*|\n");
while(1)
{
printf("请输入要完成的功能:0-10:");
scanf("%d",&opt);
getchar(); //吸收回车
switch(opt)
{
case 1:init();print();break; //初始化
case 2:add1();print();break; //添加
case 3:mod();print();break; //修改
case 4:findbyno();print();break; //根据账号查询
case 5:findbyname();print();break; //根据姓名查询
case 6:findbyIDcard();print();break; //根据身份证号查询
case 7:findbyphone();print();break; //根据联系电话查询
case 8:del();print();break; //删除
case 9:sort();print();break; //排序
case 10:transaction();print();break; //消费/充值
case 0:system("cls");exit(0);break; //退出
default:printf("请输入0-10中的数!\n");break;
}
}
}