c语言课程设计报告会员卡计费系统源代码Word文档下载推荐.docx
- 文档编号:13452787
- 上传时间:2022-10-10
- 格式:DOCX
- 页数:22
- 大小:51.30KB
c语言课程设计报告会员卡计费系统源代码Word文档下载推荐.docx
《c语言课程设计报告会员卡计费系统源代码Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《c语言课程设计报告会员卡计费系统源代码Word文档下载推荐.docx(22页珍藏版)》请在冰豆网上搜索。
{
if(s=='
f'
||s=='
F'
)strcpy(pNew->
sex,"
女"
);
M'
m'
男"
}
else//如果输入错误
printf("
输入错误,请重新输入...\n"
gotoa;
//跳转至a,重新输入
printf("
请输入年龄:
"
scanf("
%d"
&
(pNew->
age));
//运用指针输入年龄
请输入缴费金额:
scanf("
%f"
money));
//运用指针输入余额
请输入电话:
%s"
pNew->
tel);
//运用指针输入电话
pNew->
cost=0;
//运用指针初始化消费额为0
\n创建完毕!
\n"
}
voidnewMember()//会员登记函数
{//添加会员信息
charcon='
N'
;
mem*pLast=NULL;
mem*pNew=(mem*)malloc(sizeof(mem));
//按mem动态分配内存
next=NULL;
creat_member(pNew);
//调用会员登记函数
if(head==NULL)
head=pNew;
else
pLast=get_last(head);
pLast->
next=pNew;
继续输入会员信息?
(Y继续,N返回菜单)"
//判断是否继续登记
getchar();
con=getchar();
if(con=='
n'
||con=='
)
save(pNew);
menu();
else{
newMember();
}
//显示信息操作
voidtable_head()
{//定义表头
+----------+------+------+------+--------+--------+-----------+\n"
|卡号|姓名|性别|年龄|余额|累计消费|电话|\n"
voidtable_buttom()
{//定义底线
voidtable_row(mem*p)
{//定义中间部分
|%10s|%6s|%6s|%6d|%8.2f|%8.2f|%11s|\n"
p->
id,p->
name,p->
sex,p->
age,p->
money,p->
cost,p->
voiddisplay(mem*p)
{//显示所有信息
p=head;
table_head();
//调用表头
while(p!
=NULL)
table_row(p);
//调用中间部分
p=p->
next;
table_buttom();
//调用底线
voiddisplay_one(mem*p)
{//只显示一条信息
table_row(p);
voidtable_sum()
{//定义总计
|||||总计|总计||\n"
voidtable_r(floatmoney,floatcost)
{//定义总计2
|||||%8.2f|%8.2f||\n"
money,cost);
voiddisplay_statistics(mem*p,floatmoney,floatcost)
{//显示统计信息函数
=NULL)
//定义中间部分
p=head;
table_sum();
//定义总计
table_r(money,cost);
//定义总计2
//定义表尾
}//文件相关操作
voidsave(mem*p)
{//保存函数
FILE*fp;
//定义一个指向文件的指针变量
fp=fopen("
member.dat"
"
a"
//将fopen函数的返回值赋给指针变量fp
fprintf(fp,"
%s%s%s%d%f%s%d\n"
p->
id,p->
name,p->
sex,p->
age,p->
money,p->
tel,p->
cost);
fclose(fp);
//关闭指针
voidmodify_file(mem*p)
{//保存修改会员信息函数
p=head;
if((fp=fopen("
w"
))==NULL)
{//检查打开文件的操作是否有错
文件不存在"
getchar();
//调用菜单函数
{
%s%s%s%d%f%s%f\n"
voidload(mem*p)
{//从文件加载信息
mem*pLast=NULL;
head=NULL;
"
r"
没有会员信息,请录入!
"
getch();
//调用菜单函数
while(!
feof(fp))
{//文件指针是否到达末尾
mem*pNew=(mem*)malloc(sizeof(mem));
pNew->
next=NULL;
fscanf(fp,"
pNew->
id,pNew->
name,pNew->
sex,&
age),&
money),pNew->
tel,&
cost));
if(head==NULL)
{
head=pNew;
}
else
pLast=get_last(head);
pLast->
}
//通过卡号搜索信息函数
mem*search_id(mem*p)
{//通过卡号搜索信息
inti=0;
scanf("
id);
while(p&
&
(strcmp(id,"
n"
)!
=0))
{//判断id是否不为n
if(strcmp(p->
id,id)==0)
{//找到
i=1;
break;
}
p=p->
if(strcmp(id,"
)==0)//输入n时返回菜单
if(p==NULL)
{//重新搜索卡号
您查找的卡号不存在,请重新输入:
p=search_id(p);
//调用寻找函数
returnp;
//返回p
/*修改会员信息操作*/
voidmodify_m()
{//修改会员的信息
chars,fun='
y'
charpro[]=
|\n"
|1姓名\n"
|2性别\n"
|3年龄\n"
|4电话\n"
|5返回\n"
mem*p;
load(p);
display(p);
//调用显示函数
请输入需要修改信息的会员卡号(n返回菜单):
p=search_id(p);
//调用按号寻找函数
while(fun=='
||fun=='
Y'
{//当继续寻找时
system("
cls"
//清屏
display_one(p);
//调用显示一条函数
请选择修改的项目:
printf(pro);
//输出pro
scanf("
%c"
fun);
switch(fun)
{//用switch语句选择修改内容
case'
1'
:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计 报告 会员卡 计费 系统 源代码