C语言课程设计-网吧管理系统

合集下载

c语言课程设计网吧计费

c语言课程设计网吧计费

c语言课程设计网吧计费一、教学目标本节课的教学目标是让学生掌握C语言编程的基本方法,通过编写“网吧计费”程序,理解函数的定义和调用,掌握if-else分支结构和循环结构的使用,从而培养学生的问题分析和解决能力。

1.理解函数的定义和调用;2.掌握if-else分支结构和循环结构的使用。

3.能够运用C语言编写简单的程序;4.能够独立完成“网吧计费”程序的编写。

情感态度价值观目标:1.培养学生对编程的兴趣和热情;2.培养学生解决问题的自信心和耐心。

二、教学内容本节课的教学内容主要包括以下几个部分:1.C语言基础知识:介绍C语言的基本语法和数据类型。

2.函数的定义和调用:讲解函数的定义方法,如何调用函数,以及函数的参数传递。

3.if-else分支结构:讲解如何使用if-else语句进行条件判断,以及多分支结构的编写。

4.循环结构:讲解for循环和while循环的使用方法,以及循环控制语句break和continue。

5.“网吧计费”案例分析:分析计费规则,引导学生编写相应的程序。

三、教学方法为了达到本节课的教学目标,我们将采用以下几种教学方法:1.讲授法:讲解C语言的基本语法、数据类型、函数的定义和调用、if-else分支结构、循环结构等基础知识。

2.案例分析法:通过分析“网吧计费”案例,引导学生运用所学知识解决问题。

3.实验法:让学生动手编写“网吧计费”程序,巩固所学知识。

4.讨论法:在课堂上鼓励学生提问、讨论,解答学生在编程过程中遇到的问题。

四、教学资源为了支持本节课的教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:《C语言程序设计》2.参考书:《C语言编程实例解析》3.多媒体资料:PPT课件、编程案例视频4.实验设备:计算机、编程环境(如Visual Studio、Code::Blocks等)5.网络资源:在线编程平台(如LeetCode、牛客网等)五、教学评估本节课的教学评估将采取多元化评价方式,全面客观地评价学生的学习成果。

c语言课程设计网吧管理系统

c语言课程设计网吧管理系统

c语言课程设计网吧管理系统一、教学目标本节课的教学目标是让学生掌握C语言编程的基本方法,能够运用C语言设计一个简单的网吧管理系统。

具体分为三个部分:1.知识目标:使学生了解C语言的基本语法、数据类型、运算符、控制结构等,为编写网吧管理系统打下基础。

2.技能目标:培养学生运用C语言进行程序设计的能力,使学生能够独立完成网吧管理系统的编码和调试。

3.情感态度价值观目标:培养学生对计算机编程的兴趣,增强其创新意识和团队协作能力,使其认识到C语言在实际应用中的重要性。

二、教学内容本节课的教学内容主要包括C语言的基本语法、数据类型、运算符、控制结构等,以及如何运用这些知识设计一个简单的网吧管理系统。

具体安排如下:1.介绍C语言的基本语法和编程环境。

2.讲解数据类型、运算符和控制结构,通过实例使学生理解这些知识在实际编程中的应用。

3.引导学生运用所学知识设计网吧管理系统的基本功能模块,如用户登录、会员管理、消费查询等。

4.教授学生如何对网吧管理系统进行调试和优化,提高系统的稳定性和效率。

三、教学方法为了提高学生的学习兴趣和主动性,本节课将采用以下教学方法:1.讲授法:教师讲解C语言的基本语法、数据类型、运算符和控制结构,为学生提供理论知识。

2.案例分析法:教师通过分析实际案例,使学生了解如何将理论知识应用于实际编程。

3.实验法:学生动手编写网吧管理系统,培养其实际编程能力。

4.讨论法:学生在课堂上相互交流、讨论,分享编程心得,提高团队协作能力。

四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将准备以下教学资源:1.教材:选用权威、实用的C语言教材,为学生提供理论知识。

2.参考书:提供丰富的参考书籍,帮助学生拓展知识面。

3.多媒体资料:制作精美的PPT,直观地展示C语言编程过程。

4.实验设备:为学生提供充足的计算机设备,便于进行实际编程练习。

五、教学评估为了全面、客观地评估学生的学习成果,本节课采用以下评估方式:1.平时表现:评估学生在课堂上的参与程度、提问回答等情况,占总评的20%。

网吧管理系统c课程设计

网吧管理系统c课程设计

网吧管理系统c 课程设计一、教学目标本课程的学习目标主要包括知识目标、技能目标和情感态度价值观目标。

知识目标要求学生掌握网吧管理系统的相关概念、原理和操作方法;技能目标要求学生能够运用C语言进行简单的系统设计和编程;情感态度价值观目标要求学生树立正确的网络道德观念,认识到网络管理的重要性。

通过本课程的学习,学生应该能够:1.描述网吧管理系统的功能和结构;2.解释C语言在网吧管理系统中的应用;3.使用C语言编写简单的网吧管理系统程序;4.分析网络管理的重要性和网络道德观念。

二、教学内容本课程的教学内容主要包括网吧管理系统的概念、C语言的基础知识、系统设计与编程方法。

1.网吧管理系统的概念:介绍网吧管理系统的功能、结构和组成;2.C语言的基础知识:讲解C语言的基本语法、数据类型、运算符、控制结构等;3.系统设计与编程方法:讲解如何使用C语言进行系统设计和编程,包括模块化设计、函数调用等。

三、教学方法本课程采用多种教学方法,包括讲授法、讨论法、案例分析法和实验法等。

1.讲授法:通过讲解和演示,向学生传授网吧管理系统和C语言的基础知识;2.讨论法:学生进行小组讨论,促进学生对问题的深入思考和理解;3.案例分析法:分析真实的网吧管理系统案例,让学生了解实际应用场景;4.实验法:安排实验室实践环节,让学生亲自动手编写程序,加深对知识的理解和运用。

四、教学资源本课程所需的教学资源包括教材、参考书、多媒体资料和实验设备。

1.教材:选择合适的教材,为学生提供系统性的学习材料;2.参考书:提供相关的参考书籍,丰富学生的知识体系;3.多媒体资料:制作课件、视频等多媒体资料,提高学生的学习兴趣;4.实验设备:提供计算机实验室,让学生进行实际操作和编程练习。

五、教学评估本课程的评估方式包括平时表现、作业和考试等,以客观、公正的方式全面反映学生的学习成果。

1.平时表现:通过观察学生在课堂上的参与程度、提问和回答问题的表现来评估;2.作业:布置适量的作业,要求学生按时完成,并进行批改和反馈;3.考试:安排期中考试和期末考试,测试学生对知识的掌握程度和运用能力。

C课程设计网吧账户管理

C课程设计网吧账户管理

C课程设计网吧账户管理一、教学目标本节课的学习目标包括以下三个方面:1.知识目标:学生需要掌握网吧账户管理的基本概念、流程和注意事项。

通过对课本内容的深入学习,了解网吧账户管理的相关知识,为实际操作打下基础。

2.技能目标:学生能够独立完成网吧账户的创建、修改和删除等操作。

通过实践练习,提高操作熟练度,培养学生的动手能力。

3.情感态度价值观目标:培养学生遵守网吧纪律的意识,养成良好的上网习惯。

教育学生正确使用互联网,抵制不良信息,健康成长。

二、教学内容本节课的教学内容主要包括以下几个部分:1.网吧账户管理的基本概念:讲解网吧账户的定义、作用和分类,使学生对网吧账户管理有一个整体的认识。

2.网吧账户管理的流程:详细介绍网吧账户的创建、修改、删除等操作步骤,让学生掌握账户管理的基本流程。

3.网吧账户管理的注意事项:讲解网吧账户管理中的常见问题及解决方法,提高学生解决问题的能力。

4.实际操作练习:安排适量的时间让学生进行网吧账户管理的实际操作练习,巩固所学知识。

三、教学方法为了提高教学效果,本节课将采用以下几种教学方法:1.讲授法:教师通过讲解,让学生了解网吧账户管理的基本概念和流程。

2.讨论法:分组讨论网吧账户管理中的实际问题,培养学生的合作意识和解决问题的能力。

3.案例分析法:分析典型的网吧账户管理案例,让学生学会分析问题、解决问题的方法。

4.实验法:安排实际操作练习,让学生动手实践,提高操作技能。

四、教学资源为了支持教学内容和教学方法的实施,本节课将准备以下教学资源:1.教材:选用符合课程标准的教材,为学生提供系统、科学的学习资料。

2.参考书:提供相关的参考书籍,丰富学生的知识视野。

3.多媒体资料:制作课件、演示文稿等多媒体资料,直观展示教学内容。

4.实验设备:准备计算机等实验设备,保证学生实际操作的需要。

五、教学评估为了全面、客观地评估学生的学习成果,本节课将采用以下几种评估方式:1.平时表现评估:关注学生在课堂上的参与度、提问回答等情况,记录学生的表现,占总成绩的30%。

c语言网吧计费系统源代码

c语言网吧计费系统源代码

#include <stdio.h>#include <stdlib.h>#include <string.h>#include <conio.h>#define N 5struct user{char ID_card[30];char user_card[10];char user_level[50];float add_money; //充值};struct LinkList{struct user struct_user;LinkList *pNext;};struct control{char control_name[20];char control_password[15];}control_person={"apollo","apollo"};//管理员账户和密码设置////////////////////////////////void enter(int x);void tab(int x);void start();void login();void mainmenu();void submenu1();void submenu2();void submenu3();void submenu4();void xian_shi(LinkList *pHead);LinkList *adduser(LinkList *pHead);LinkList *addmoney(LinkList *pHead); //充值LinkList *shang_wang(LinkList *pHead); //上网LinkList *zhu_xiao(LinkList *pHead); //注销会员void save(LinkList *pTemp);LinkList *readsave();void cha_xun_shen(LinkList *pHead);void cha_xun_hui(LinkList *pHead);///////////////////////启动void start(){system("cls");for(int k=0;k<2;k++){for(int i=0;i<N;i++){system("color B");enter(7);tab(3);printf(" 星星网吧计费管理系统");enter(2);tab(4);printf(" ■");enter(1);tab(4);for(i=0;i<100000000;i++){}system("cls"); //circle 1 endenter(7);tab(3);printf(" 星星网吧计费管理系统");enter(2);tab(4);printf(" ■");enter(1);tab(4);for(i=0;i<100000000;i++){}system("cls"); //circle 2 endenter(7);tab(3);printf(" 星星网吧计费管理系统");enter(2);tab(4);printf(" ■");enter(1);tab(4);for(i=0;i<100000000;i++){}system("cls"); //circle 3 endenter(7);tab(3);printf(" 星星网吧计费管理系统"); enter(2);tab(4);printf(" ■");enter(1);tab(4);for(i=0;i<100000000;i++){}system("cls"); //circle 4 endenter(7);tab(3);printf(" 星星网吧计费管理系统"); enter(2);tab(4);printf(" ■");enter(1);tab(4);for(i=0;i<100000000;i++){}system("cls"); //circle 5 endenter(7);tab(3);printf(" 星星网吧计费管理系统"); enter(2);tab(4);printf(" ■");enter(1);tab(4);for(i=0;i<100000000;i++){}system("cls"); //circle 6 endenter(7);tab(3);printf(" 星星网吧计费管理系统"); enter(2);tab(4);printf(" ■");enter(1);tab(4);for(i=0;i<100000000;i++){}system("cls"); //circle 7 endenter(7);tab(3);printf(" 星星网吧计费管理系统");enter(2);tab(4);printf(" ■");enter(1);tab(4);for(i=0;i<100000000;i++){}system("cls"); //circle 8 endenter(7);tab(3);printf(" 星星网吧计费管理系统");enter(2);tab(4);printf(" ■");enter(1);tab(4);for(i=0;i<100000000;i++){}system("cls"); //circle 9 end }}login();}//登陆函数void login(){char name[20];char password[15];while(1){system("cls");enter(7);tab(3);printf(" 管理员登录");enter(2);tab(4);printf("Count:");fflush(stdin);if(strcmp(gets(name),control_person.control_name)==0){leap: system("cls");enter(7);tab(3);printf(" 管理员登录");enter(2);tab(4);printf("Password:");fflush(stdin);if(strcmp(gets(password),control_person.control_password)==0){mainmenu();break;}else{char ch;tab(4);printf("Your password is error!\n");tab(4);printf("Do you want to try again?(Y/N):");scanf("%c",&ch);if(ch=='Y' || ch=='y')goto leap;else if(ch=='N' || ch=='n')exit(0);else{system("cls");enter(7);tab(1);printf("Error!Please check your code then login again,thank you!\n");tab(3);exit(0);}}}else{char i;system("cls");enter(7);tab(4);printf("Your count is erorr!\n");tab(4);printf("Do you want to try again?(Y/N):");scanf("%c",&i);if(i=='Y' || i=='y')continue;else if(i=='N' || i=='n')exit(0);else{system("cls");enter(7);tab(1);printf("Error!Please check your code then login again,thank you!\n");tab(3);exit(0);}}}}//enter函数void enter(int x){for(int i=0;i<x;i++)printf("\n");}//tab函数void tab(int x){for(int i=0;i<x;i++)printf("\t");}//mainmenu主菜单void mainmenu(){struct LinkList *pHead=NULL; //初始化while(1){int i;system("cls");printf("\n\n\n\n\n\t\t\t********星星网吧计费管理系统*********\n");printf("\t\t\t** 1.注册会员**\n");printf("\t\t\t** **\n");printf("\t\t\t** 2.会员管理**\n");printf("\t\t\t** **\n");printf("\t\t\t** 3.注销**\n");printf("\t\t\t** **\n");printf("\t\t\t** 4.重启**\n");printf("\t\t\t** **\n");printf("\t\t\t** 5.关闭系统**\n");printf("\t\t\t*************************************\n");printf("\t\t\t请选择:");fflush(stdin);scanf("%d",&i);switch(i){case 1:pHead=adduser(pHead);break;case 2:submenu1();break;case 3:login();break;case 4:start();break;case 5:submenu2();break;default:printf("输入错误!\n");for(int j=0;j<100000000;j++){}break;}}}//submenu1会员管理菜单void submenu1(){struct LinkList *pHead=NULL;while(1){int i;system("cls");printf("\n\n\n\n\n\t\t\t**************会员管理***************\n");printf("\t\t\t** 1.会员消费**\n");printf("\t\t\t** **\n");printf("\t\t\t** 2.注销会员**\n");printf("\t\t\t** **\n");printf("\t\t\t** 3.查找会员信息**\n");printf("\t\t\t** **\n");printf("\t\t\t** 4.查询所有会员信息**\n");printf("\t\t\t** **\n");printf("\t\t\t** 5.返回上一级菜单**\n");printf("\t\t\t*************************************\n");printf("\t\t\t请选择:");fflush(stdin);scanf("%d",&i);switch(i){case 1:submenu3();break;case 2:pHead=zhu_xiao(pHead);break;case 3:submenu4();break;case 4:;xian_shi(pHead);break;case 5:mainmenu();break;default:printf("输入错误!\n");for(int j=0;j<100000000;j++){}break;}}}//submenu2关闭系统void submenu2(){system("cls");printf("\n\n\n\n\n\t\t\t********星星网吧计费管理系统*********\n");printf("\t\t\t** 谢谢您的使用! **\n");printf("\t\t\t** **\n");printf("\t\t\t** 欢迎再次使用! **\n");printf("\t\t\t** **\n");printf("\t\t\t** 技术支持: **\n");printf("\t\t\t** **************************\n");printf("\t\t\t** 版权所有: **\n");printf("\t\t\t** 湖南长沙英泰学院09081A班**\n");printf("\t\t\t** 2009.10 **\n");printf("\t\t\t*************************************\n");exit(0);}//submenu3消费菜单void submenu3(){int i;LinkList *pHead=NULL;while(1){system("cls");printf("\n\n\n\n\n\t\t\t**********消费内容*******************\n");printf("\t\t\t** 1.充值**\n");printf("\t\t\t** **\n");printf("\t\t\t** 2.上网**\n");printf("\t\t\t** **\n");printf("\t\t\t** 3.返回上一级菜单**\n");printf("\t\t\t*************************************\n");printf("\t\t\t请选择:");fflush(stdin);scanf("%d",&i);switch(i){case 1:pHead=addmoney(pHead);break;case 2:pHead=shang_wang(pHead);break;case 3:submenu1();break;default:printf("输入错误!请重新输入!\n");for(int j=0;j<100000000;j++){}break;}}}//submenu4会员查找函数void submenu4(){int i;LinkList *pHead=NULL;while(1){system("cls");printf("\n\n\n\n\n\t\t\t**************查找会员***************\n");printf("\t\t\t** 1.按身份证号码查找**\n");printf("\t\t\t** **\n");printf("\t\t\t** 2.按会员卡号号码查找**\n");printf("\t\t\t** **\n");printf("\t\t\t** 3.返回上一级菜单**\n");printf("\t\t\t*************************************\n");printf("\t\t\t请选择:");fflush(stdin);scanf("%d",&i);switch(i){case 1:cha_xun_shen(pHead);break;case 2:cha_xun_hui(pHead);break;case 3:submenu1();break;default:printf("输入错误!请重新输入!\n");for(int j=0;j<100000000;j++){}break;}}}//新会员注册LinkList *adduser(LinkList *pHead){LinkList *pTemp,*p;system("cls");pTemp=(LinkList *)malloc(sizeof(struct LinkList));if(pTemp==NULL)return pHead;leap:printf("\n\n\n\n\t\t");printf("输入第二代身份证号码(18位):");fflush(stdin);gets(pTemp->struct_user.ID_card);for(int i=0;i<17;i++){if(pTemp->struct_user.ID_card[i]>'9' || pTemp->struct_user.ID_card[i]<'0') //如果输入的信息大于9小于0的范围(输入的不是数字){system("cls");printf("输入的不是纯数字!\n请重新输入!\n");goto leap;}else if(strlen(pTemp->struct_user.ID_card)!=18 || strlen(pTemp->struct_user.ID_card)==0){system("cls");printf("输入不合法!\n请重新输入!\n");goto leap;}}loop:printf("\n\t\t");printf("请输入卡号(8位):");fflush(stdin);gets(pTemp->struct_er_card);for(i=0;i<8;i++){if(pTemp->struct_er_card[i]>'9' || pTemp->struct_er_card[i]<'0') //如果输入的信息大于9小于0的范围(输入的不是数字){system("cls");tab(3);printf("输入的不是纯数字!\n请重新输入!\n");goto loop;}else if(strlen(pTemp->struct_er_card)!=8 || strlen(pTemp->struct_er_card)==0){system("cls");printf("输入不合法!\n请重新输入!\n");goto loop;}}k: printf("\n\n\t\t|-----------会员优惠活动------------|\n");printf("\t\t| 普通会员>0 <=10元|\n");printf("\t\t| 铜卡会员>10 <=20元+10元|\n");printf("\t\t| 银卡会员>20 <=30元+20元|\n");printf("\t\t| 金卡会员>30 <=50元+30元|\n");printf("\t\t| VIP会员充100元送80元|\n");printf("\t\t|-----------------------------------|\n");printf("\t\t");printf("充值:");fflush(stdin);scanf("%f",&(pTemp->struct_user.add_money)); //充值if(pTemp->struct_user.add_money>1000 || pTemp->struct_user.add_money<=0) //如果输入的信息大于9小于0的范围(输入的不是数字){system("cls");printf("输入错误!\n请重新输入!\n");goto k;}else if(pTemp->struct_user.add_money>0 && pTemp->struct_user.add_money<=10){tab(2);strcpy(pTemp->struct_er_level,"普通会员");printf("■恭喜你!你已成为本网吧普通会员!■\n");}else if(pTemp->struct_user.add_money>10 && pTemp->struct_user.add_money<=20){tab(2);strcpy(pTemp->struct_er_level,"铜卡会员");printf("■恭喜你!你已成为本网吧铜卡会员!■\n");pTemp->struct_user.add_money+=10;}else if(pTemp->struct_user.add_money>20 && pTemp->struct_user.add_money<=30) {tab(2);strcpy(pTemp->struct_er_level,"银卡会员");printf("■恭喜你!你已成为本网吧银卡会员!■\n");pTemp->struct_user.add_money+=20;}else if(pTemp->struct_user.add_money>=30 && pTemp->struct_user.add_money<100) {tab(2);strcpy(pTemp->struct_er_level,"金卡会员");printf("■恭喜你!你已成为本网吧金卡会员!■\n");pTemp->struct_user.add_money+=30;}else if(pTemp->struct_user.add_money>=100){tab(2);strcpy(pTemp->struct_er_level,"VIP会员");printf("■恭喜你!你已成为本网吧VIP会员!■\n");pTemp->struct_user.add_money+=80;}pTemp->pNext=NULL;//////////////////if(pHead==NULL)pHead=pTemp;else{p=pHead;while(p->pNext!=NULL)p=p->pNext;p->pNext=pTemp;}save(pTemp);return pHead;}//保存会员注册void save(LinkList *pTemp){FILE *fp=fopen("user","ab");if(fp==NULL){tab(3);printf("读取失败!\n");exit(0);}tab(3);printf("开始保存文件!\n");if(fwrite(pTemp,sizeof(struct LinkList),1,fp)==1){tab(3);printf("文件保存成功!\n");getch();}else{tab(3);printf("文件保存失败!\n");getch();}fclose(fp);}//读取保存LinkList *readsave(){LinkList *pHead=NULL,*p;FILE *fp;fp=fopen("user","rb");if(fp==NULL){tab(3);printf("文件打开失败!\n");getch();return pHead;}while(!feof(fp)){LinkList *pTemp=(LinkList*)malloc(sizeof(LinkList));int t=fread(pTemp,sizeof(struct LinkList),1,fp);pTemp->pNext=NULL;if(t>0){if(pHead==NULL){pHead=pTemp;}else{p=pHead;while(p->pNext!=NULL)p=p->pNext;p->pNext=pTemp;}}elsebreak;}fclose(fp);return pHead;}//显示所有会员信息void xian_shi(LinkList *pHead){FILE *fp=fopen("user","rb");if(fp==NULL){system("cls");printf("\n\n\n\n\n\n\n\n\t\t\t\t");printf("没有会员信息!\n");getch();return;}LinkList *pTemp,*p;pTemp=(LinkList *)malloc(sizeof(LinkList));int count=0;system("cls");enter(5);printf(" -----------------------|-------------|--------------|--------------\n");printf("\t身份证号码\t\t会员卡号\t卡上余额\t会员级别\n");printf(" -----------------------|-------------|--------------|--------------\n");while(!feof(fp)){int t=fread(pTemp,sizeof(LinkList),1,fp);pTemp->pNext=NULL;//////////////////if(t>0){count++;if(pHead==NULL){pHead=pTemp;}else{p=pHead;while(p->pNext!=NULL)p=p->pNext;p->pNext=pTemp;}}else{break;}printf("\t%-20s\t%-10s\t%-5.1f元\t\t%-6s\n",pTemp->struct_user.ID_card,pTemp->struct_er_card,pTemp->struct_user.add_ money,pTemp->struct_er_level);}printf(" -----------------------|-------------|--------------|--------------\n");printf("\n\t\t共有会员%d个\n",count);getch();fclose(fp);}//查找会员信息(按身份证号码查找)void cha_xun_shen(LinkList *pHead){LinkList *pTemp;char shen_fen[100];system("cls");enter(9);tab(3);printf("身份证号码:");fflush(stdin);gets(shen_fen);if(strlen(shen_fen)!=18){tab(3);printf("输入错误!\n");getch();return;}pHead=readsave();if(pHead==NULL){tab(3);printf("没有找到会员信息或会员不存在!\n");getch();return;}pTemp=pHead;while(pTemp){if(strcmp(pTemp->struct_user.ID_card,shen_fen)==0){system("cls");enter(5);printf(" -----------------------|-------------|--------------|--------------\n");printf("\t身份证号码\t\t会员卡号\t卡上余额\t会员级别\n");printf(" -----------------------|-------------|--------------|--------------\n");printf("\t%-20s\t%-10s\t%-5.1f元\t\t%-6s\n",pTemp->struct_user.ID_card,pTemp->struct_er_card,pTemp->struct_user.add_ money,pTemp->struct_er_level);printf(" -----------------------|-------------|--------------|--------------\n");getch();break;}pTemp=pTemp->pNext;}}//查找会员信息(按会员卡号查找)void cha_xun_hui(LinkList *pHead){LinkList *pTemp;char shen_fen[100];system("cls");enter(9);tab(3);printf("卡号(8位:");fflush(stdin);gets(shen_fen);if(strlen(shen_fen)!=8){tab(3);printf("输入错误!\n");getch();return;}pHead=readsave();if(pHead==NULL)tab(3);printf("没有找到会员信息或会员不存在!\n");getch();return;}pTemp=pHead;while(pTemp){if(strcmp(pTemp->struct_er_card,shen_fen)==0){system("cls");enter(5);printf(" -----------------------|-------------|--------------|--------------\n");printf("\t身份证号码\t\t会员卡号\t卡上余额\t会员级别\n");printf(" -----------------------|-------------|--------------|--------------\n");printf("\t%-20s\t%-10s\t%-5.1f元\t\t%-6s\n",pTemp->struct_user.ID_card,pTemp->struct_er_card,pTemp->struct_user.add_ money,pTemp->struct_er_level);printf(" -----------------------|-------------|--------------|--------------\n");getch();break;}pTemp=pTemp->pNext;}}//保存充值、注销和上网消费后的后的会员信息void save_chong(LinkList *pHead){FILE *fp=fopen("user","wb");if(fp==NULL){tab(3);printf("文件打开失败!\n");getch();return;}LinkList *pTemp;pTemp=pHead;if(pHead==NULL){printf("没有找到会员信息!\n");getch();return;printf("开始保存修改!\n");while(pTemp){fwrite(pTemp,sizeof(LinkList),1,fp);pTemp=pTemp->pNext;}printf("保存成功!\n");getch();fclose(fp);}//充值LinkList *addmoney(LinkList *pHead){LinkList *pTemp;char shen_fen[100];system("cls");enter(9);tab(3);printf("卡号(8位):");fflush(stdin);gets(shen_fen);if(strlen(shen_fen)!=8){tab(3);printf("输入错误!\n");getch();return pHead;}pHead=readsave(); //very importantif(pHead==NULL){tab(3);printf("没有找到会员信息或会员不存在!\n");getch();return pHead;}pTemp=pHead;while(pTemp){if(strcmp(pTemp->struct_er_card,shen_fen)==0){system("cls");enter(5);printf(" -----------------------|-------------|--------------|--------------\n");printf("\t身份证号码\t\t会员卡号\t卡上余额\t会员级别\n");printf(" -----------------------|-------------|--------------|--------------\n");printf("\t%-20s\t%-10s\t%-5.1f元\t\t%-6s\n",pTemp->struct_user.ID_card,pTemp->struct_er_card,pTemp->struct_user.add_ money,pTemp->struct_er_level);printf(" -----------------------|-------------|--------------|--------------\n");float m=pTemp->struct_user.add_money;printf("请输入充值金额:");scanf("%f",&(pTemp->struct_user.add_money));pTemp->struct_user.add_money+=m;save_chong(pHead);break;}pTemp=pTemp->pNext;}return pHead;}//上网LinkList *shang_wang(LinkList *pHead){LinkList *pTemp;char shen_fen[100];system("cls");enter(2);printf("\n\n\n\n\t\t\t**********网吧计费管理系统***********\n");printf("\t\t\t** 1.普通会员3元/时**\n");printf("\t\t\t** **\n");printf("\t\t\t** 2.铜卡会员 2.5元/时**\n");printf("\t\t\t** **\n");printf("\t\t\t** 3.银卡会员2元/时**\n");printf("\t\t\t** **\n");printf("\t\t\t** 4.金卡会员 1.5元/时**\n");printf("\t\t\t** **\n");printf("\t\t\t** 5.VIP会员1元/时**\n");printf("\t\t\t*************************************\n");printf("请输入会员卡号码(8位数字):");fflush(stdin);gets(shen_fen);if(strlen(shen_fen)!=8){tab(3);printf("输入错误!\n");getch();return pHead;}pHead=readsave(); //读取文件if(pHead==NULL) //如果头指针为空,说明没有该链表{tab(3);printf("没有找到会员信息或会员不存在!\n");getch();return pHead;}pTemp=pHead; //头指针不为空while(pTemp) //访问节点{if(strcmp(pTemp->struct_er_card,shen_fen)==0) //如果找到与输入的会员卡号相同{ //则输出该会员信息printf(" -----------------------|-------------|--------------|--------------\n");printf("\t身份证号码\t\t会员卡号\t卡上余额\t会员级别\n");printf(" -----------------------|-------------|--------------|--------------\n");printf("\t%-20s\t%-10s\t%-5.1f元\t\t%-6s\n",pTemp->struct_user.ID_card,pTemp->struct_er_card,pTemp->struct_user.add_ money,pTemp->struct_er_level);printf(" -----------------------|-------------|--------------|--------------\n");float m=pTemp->struct_user.add_money;//上网前的卡上余额float time;printf("请输入上网时间(时):");fflush(stdin);scanf("%f",&time);if(strcmp(pTemp->struct_er_level,"普通会员")==0) //按会员级别来管理{ //每小时上网的费用pTemp->struct_user.add_money=m-3*time; //上网后的卡上余额save_chong(pHead); //保存修改后的内容break;}else if(strcmp(pTemp->struct_er_level,"铜卡会员")==0){pTemp->struct_user.add_money=m-2.5f*time;save_chong(pHead);break;}else if(strcmp(pTemp->struct_er_level,"银卡会员")==0){pTemp->struct_user.add_money=m-2*time;save_chong(pHead);break;}else if(strcmp(pTemp->struct_er_level,"金卡会员")==0){pTemp->struct_user.add_money=m-1.5f*time;save_chong(pHead);break;}else if(strcmp(pTemp->struct_er_level,"VIP会员")==0){pTemp->struct_user.add_money=m-1*time;save_chong(pHead);break;}}pTemp=pTemp->pNext;//指针指向下一个查找,直到找到满足上面条件为止}return pHead;}//注销会员LinkList *zhu_xiao(LinkList *pHead){LinkList *pTemp,*p;char shen_fen[100];system("cls");enter(9);tab(3);printf("卡号:");fflush(stdin);gets(shen_fen);pHead=readsave(); //读取文件if(pHead==NULL) //如果头节点为空,表示这条链表没有内容,或者没有这条链表{tab(3);printf("没有找到会员信息或会员不存在!\n");return pHead;}pTemp=pHead; //指针指向头节点while(pTemp)//访问节点{if(strcmp(pTemp->struct_er_card,shen_fen)==0)//寻找要删除的会员卡号,找到后输出{system("cls");enter(5);printf(" -----------------------|-------------|--------------|--------------\n");printf("\t身份证号码\t\t会员卡号\t卡上余额\t会员级别\n");printf(" -----------------------|-------------|--------------|--------------\n");printf("\t%-20s\t%-10s\t%-5.1f元\t\t%-6s\n",pTemp->struct_user.ID_card,pTemp->struct_er_card,pTemp->struct_user.add_ money,pTemp->struct_er_level);printf(" -----------------------|-------------|--------------|--------------\n");char ch;printf("\n你要注销该会员吗?(Y/N)\n");scanf("%c",&ch);switch(ch){case 'Y':case 'y':{if(pTemp==pHead) //如果要删除的是头节点{pHead=pTemp->pNext; //把头节点指针指向第二个节点,并把头节点覆盖printf("注销成功!\n");getch();break;}p=pHead;//不是头节点,把指针指向头节点while(1){if(p->pNext==pTemp) //如果p的指针域指向找到的节点pTemp{p->pNext=pTemp->pNext;//则把pTemp的指针域指向的下一个节点付给p的指针域printf("注销成功!\n");//删除成功getch();break;}p=p->pNext;//寻找p->pNext和要删除节点pTemp的交合}}break;case 'N':case 'n':break;}}pTemp=pTemp->pNext;//寻找shen_fen和节点的交合}save_chong(pHead);system("cls");return pHead;}//主函数void main(){start();mainmenu();}。

管理系统C语言课程设计

管理系统C语言课程设计

管理系统C语言课程设计一、教学目标本课程的学习目标包括知识目标、技能目标和情感态度价值观目标。

知识目标要求学生掌握管理系统C语言的基本概念、原理和编程方法;技能目标要求学生能够运用管理系统C语言解决实际问题,具备一定的编程能力和算法分析能力;情感态度价值观目标要求学生培养良好的编程习惯和团队协作精神,提高创新能力和实践能力。

通过分析课程性质、学生特点和教学要求,我们将目标分解为具体的学习成果。

学生将能够:1.理解管理系统C语言的基本概念和原理;2.掌握管理系统C语言的编程方法和技巧;3.运用管理系统C语言解决实际问题;4.具备一定的算法分析能力;5.培养良好的编程习惯和团队协作精神;6.提高创新能力和实践能力。

二、教学内容根据课程目标,我们选择和了以下教学内容:1.管理系统C语言的基本概念和原理:数据结构、算法、编程语言特性等;2.管理系统C语言的编程方法和技巧:语法、控制结构、函数、指针等;3.管理系统C语言的实际应用:排序算法、查找算法、栈、队列、链表等;4.算法分析和设计:时间复杂度、空间复杂度、算法优化等;5.编程习惯和团队协作:代码规范、版本控制、团队协作工具等;6.创新能力和实践能力培养:项目实践、问题解决、创新思维等。

我们将按照以下大纲进行教学:1.管理系统C语言的基本概念和原理;2.管理系统C语言的编程方法和技巧;3.管理系统C语言的实际应用;4.算法分析和设计;5.编程习惯和团队协作;6.创新能力和实践能力培养。

三、教学方法我们将采用以下教学方法来实现课程目标:1.讲授法:讲解管理系统C语言的基本概念、原理和编程方法;2.讨论法:引导学生进行问题讨论和思考,培养创新能力和实践能力;3.案例分析法:分析实际应用案例,让学生掌握管理系统C语言的应用技巧;4.实验法:让学生动手实践,提高编程能力和算法分析能力。

通过多样化的教学方法,激发学生的学习兴趣和主动性,促进学生的全面发展。

四、教学资源我们将选择和准备以下教学资源:1.教材:《管理系统C语言教程》;2.参考书:相关数据结构与算法书籍;3.多媒体资料:教学PPT、视频教程等;4.实验设备:计算机、网络环境等。

网吧管理系统

网吧管理系统

《C语言程序设计》网吧管理系统内容网吧管理程序:实现对网吧的初级的管理。

二、上机环境操作系统:windows XP或者win7。

开发环境:VC6.0。

三、函数调用关系图四、函数功能说明1.main() 主函数2.void menu(); 菜单函数3.void input(); 输入函数4.void del(); 删除会员信息函数5.void point(); 会员积分函数6.void add(); 增加会员函数7.void search(); 查找会员函数8.void quit(); 退出函数9.void save(int m) ;保存会员信息函数10.void loading(); 会员登录函数11.void window(); 界面函数12.void list(); 列表函数五算法流程图六、程序运行效果图七、总结通过这一学期的学习,对于C语言的一些特点和算法有了一定程度的了解,并能够做一些中等的题目,但并没有完全掌握。

这一周的课程设计正是让我们巩固以前的知识并在此基础上能够有所突破。

对C 语言的使用进一步的提高,加深了我对程序的深层理解,清楚程序中每一步的功能,在程序的运行中是十分重要的,一个好的结构在运行中能够充分的发挥程序的功能,结构设计的合理性决定了这个程序的价值。

程序设计过程犹如解决实际问题,从解决实际问题的角度,我们可以这样来看:首先要了解这个问题的基本要求,即输入、输出、完成从输入到输出的要求是什么;其次,从问题的关键入手,从前到后的解决问题的每个方面,即从输入开始入手,着重考虑如何从输入导出输出,在这个过程中,可确定所需的变量、数组、函数,然后确定处理过程--算法。

可得最后结论。

C语言课程设计和现代计算机技术的实际应用相结合,是我们在本阶段学完理论课程之后对自己该方面的能力的一次很好的检验,从开始的算法思路到运行调试后的美观的图形界面以及另人兴奋的可用程序,都是一个很好的学习和锻炼的过程。

C++课程设计网吧管理系统

C++课程设计网吧管理系统

C++课程设计报告(设计题目:网吧管理系统的设计)姓名:专业:班级:指导老师:2010年9月目录1 课程设计目的……………………………………………………2 项目要求与简介…………………………………………………3 系统实现…………………………………………………………3.1 系统功能结构与模块划分…………………………………. 3.2 数据流图……………………………………………………. 3.3 系统采用的关键(难点)技术…………………………….3.4 源程序清单………………………………………………….4 测试运行的结果………………………………………………….5 心得体会与进一步的改进………………………………………6 参考书目…………………………………………………………1 课程设计目的目标是使学生了解可视化程序设计语言的基础知识,掌握面向对象编程的分析设计方法,以及与面向对象技术相关的一些软件开发技术,掌握在 VisualC++6环境下进行可视化程序设计技术。

通过实践具体的项目,为他们进一步开展相关领域的学习和科研打下良好的基础。

2 项目要求与简介1、二进制、八进制、十进制及十六进制数的加、减、乘、除、乘方、取模等简单计算2、科学计算函数,包括(反)正弦、(反)余弦、(反)正切、(反)余切、开方、指数等函数运行4、具备历史计算的记忆功能5、对不正确的表达式能指出其错误原因6、整理上机步骤、完成实验报告、提交可运行的程序,给出实验数据和实验结果。

3 系统实现3.1 系统功能结构与模块划分网吧管理系统Main()1 使用时间函数进行时间记录;struct tm*ptr; time_t m[100];2 建立用户类;class Yong {public: Yong(string a="0",string b="0",int c=1){aa=a;bb=b;cc=(float)c;} string xianshiming(){return aa;}void xianshiyong(){cout<<"姓名"<<aa<<setw(10)<<"身份证号"<<bb<<setw(10)<<"余额/原有"<<cc<<endl;}Yong operator + (const Yong &c2) const ;float cc;private: string aa,bb;};3 使用goto函数对函数进行整体调控;switch (d){case 0: chaxun(p,i); goto xinxin ; break;case 1: chongqian(p,i);goto xinxin; break;case 2: shanchu(p,i,n); goto huahua; break;case 3: c=1; goto huahua; break;case 4:i=i-1;for(t=0;t<=i;t++)p[t].xianshiyong();i=i+1; goto huahua ;break;case 5: return 0;}4 整体建立输入查询删除充值函数进行网吧管理;3.2 数据流图(系统的数据流程图,并进行说明)输出结果,并做记录,等待下次输入显示出错情况,等待用户修改求值判断表达式是否有错输入表达式出现错误,中断扫描以一个编缉框接受用户输入的表达式,输入须用软件提供的软键盘。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《通信工程专业C语言课程设计》报告专业:通信工程班级:0802*名:**指导教师:**二00九年十二月二十五日目录一、课程设计题目及所涉及知识点 (1)二、课程设计思路及设计流程图 (1)三、课程设计中遇到的难点及解决办法 (4)四、小结 (4)参考书目 (6)附录原程序 (7)一.课程设计题目及所涉及知识点(一).课程设计题目:网吧管理系统(1).基本内容网吧管理系统管理信息包括会员的会员名、性别、年龄、积分等。

试设计一网吧管理系统,使之能提供以下功能:系统以菜单方式工作,密码登陆。

1.会员信息的录入(增加数据)。

用数组数据类型赋初值的方法把会员信息送到各个数组中(但要注意是合法数据),然后把它们保存起来。

2.会员信息的删除(删除数据)。

任意输入一位会员号,将它所有的信息从组数中删除。

3.会员信息的浏览(查找数据)。

任意输入一位会员号,打印出他的所有数据。

要求能多次查找。

4.会员积分的计算(积分数据)。

任意输入一位会员号,打印出会员的积分。

要求能多次积分计算。

5.会员管理系统登陆。

输入密码登陆系统。

(2). 课程设计的要求与数据1.编程时,设计函数来完成每个功能,通过main函数调用各函数。

2.程序中的输入输出要加提示说明。

3.输出的结果要准确、清晰、美观。

(二).所涉及知识点:结构体数组的定义与引用;函数的定义与调用;局部变量和全局变量; for循环语句;指针;if语句;switch语句;break语句;格式输入与输出;字符串处理函数;函数的定义;数组作为函数参数.二、课程设计思路及设计流程图1、课程设计思路根据题目的要求,需要一个主程序main()和12个子程序,分别为quit()、loading()、menu()、input()、save()、load()、list()、window()、add()、del()、search()、point();可以实现退出、登陆、菜单、输入、保存、导入、列表、界面、增加、删除、查找、积分。

其中,登陆、增加、删除、查找、积分五个函数为主要处理对象,也是网吧管理系统的核心部分。

2、课程设计流程图Main()Del()三、课程设计中遇到的难点及解决办法1 结构体数组的定义。

当在结构体中有float型数据时系统会提示错误。

解决方法:用其他变量代替然后再定义。

2 在调试未运行完自动跳出到主界面。

解决方法:是由于系统问题,在遇到float型数据时会出现系统错误。

3 变量未定义而先使用。

解决方法:定义变量。

4 输入名称与数据库中文件的数据匹配。

解决办法:若输入名称存在,则跳回主界面,重新操作。

若不存在,则进行下一项。

5文件的保存与导入。

解决方法:利用文件指针。

6不知道如何使型参于实参一一对应。

解决办法:对应相应参数调试。

7在调试程序是出现死循环。

解决办法:找出循环语句,调试修改范围。

8在进行导入时出错。

解决方法:看变量是否一致,看型参以实参是否对应。

9 整合完善。

解决办法:增加清屏和提示等措施完善美化程序。

四、小结C语言是一门计算机基础语言,通过这一学期的学习,对于它的一些特点和算法有了一定程度的了解,并能够做一些中等的题目,但并没有完全掌握。

这两周的课程设计正是让我们巩固以前的知识并在此基础上能够有所突破。

作为一种计算机程序设计语言。

它既有高级语言的特点,又具有汇编语言的特点。

它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。

因此,它的应用范围广泛。

同时,其特点鲜明,它是一种结构化语言。

层次清晰,便于按模块化方式组织程序,易于调试和维护。

C语言的表现能力和处理能力也极强。

它不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构。

它还可以直接访问内存的物理地址,进行位(bit)一级的操作。

具体来说:1. 简洁紧凑、灵活方便C语言一共只有32个关键字,9种控制语句,程序书写自由,主要用小写字母表示。

它把高级语言的基本结构和语句与低级语言的实用性结合起来。

C 语言可以象汇编语言一样对位、字节和地址进行操作, 而这三者是计算机最基本的工作单元。

2. 运算符丰富C的运算符包含的范围很广泛,共有种34个运算符。

C语言把括号、赋值、强制类型转换等都作为运算符处理。

从而使C的运算类型极其丰富表达式类型多样化,灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。

3. 数据结构丰富C的数据类型有:整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等。

能用来实现各种复杂的数据类型的运算。

并引入了指针概念,使程序效率更高。

另外C语言具有强大的图形功能, 支持多种显示器和驱动器。

且计算功能、逻辑判断功能强大。

4. C是结构式语言结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。

这种结构化方式可使程序层次清晰,便于使用、维护以及调试。

C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。

5. C语法限制不太严格、程序设计自由度大一般的高级语言语法检查比较严,能够检查出几乎所有的语法错误。

而C语言允许程序编写者有较大的自由度。

通过这次创新的课题——网吧管理系统其设想——构造——整合——优化等一系列项目完成,了解到程序设计的严谨性,也更加体会到C语言给大家带来的方便。

同时学会了很多调试程序的方法,在小组成员的探讨中不断学习到许多最优的程序设计,而且懂得了更多更好如何处理错误的方法。

对C语言的使用进一步的提高,加深了我对程序的深层理解,清楚程序中每一步的功能,在程序的运行中是十分重要的,一个好的结构在运行中能够充分的发挥程序的功能,结构设计的合理性决定了这个程序的价值。

程序设计过程有如解决一实际问题,从解决实际问题的角度,我们可以这样来看:首先要了解这个问题的基本要求,即输入、输出、完成从输入到输出的要求是什么;其次,从问题的要害入手,从前到后的解决问题的每个方面,即从输入开始入手,着重考虑如何从输入导出输出,在这个过程中,可确定所需的变量、数组、函数,然后确定处理过程--算法。

可得最后结论。

在程序设计中,可认为也是一个社会,每个一同的社会成员都有不同的想法。

程序设计学得的好坏要看你在社会中解决问题的能力的高低,所以不同的人编程的结果是不同的。

在这个社会中,经验与想法最为重要。

C语言课程设计和现代计算机技术的实际应用相结合,是我们在本阶段学完理论课程之后对自己该方面的能力的一次很好的检验,从开始的算法思路到运行调试后的美观的图形界面以及另人兴奋的可用程序,都是一个很好的学习和锻炼的过程。

使我们巩固了原有的理论知识,培养了我们灵活运用和组合集成所学过知识及技能来分析、解决实际问题的能力。

使我们体会到自身知识和能力能在实际中的应用和发挥。

不但可以激发创新意识,还可以开发创造能力、培养沟通能力。

这次实习时间虽然仅有一个星期,但确实使我受益非浅。

通过实习我丰富了计算机操作经验,更加深了对C语言的了解,熟悉了其环境,更增强了对C++的使用技巧。

另外,实习中老师对我们进行了细心、耐心的指导,鼓励我们对程序进行合理改进,培养了我们的创新意识和创新能力。

原来是我认为可怕的课程设计,就在种种辅助条件下完成了,心里有说不出的高兴。

参考书目:[1] 谭浩强,《c程序设计教程》,北京,清华大学出版社,2007年[2] 田淑清,《c语言程序设计》,北京,高等教育出版社,2008年附录原程序:#include <stdio.h>#include <conio.h>#include <windows.h>#include <string.h>/*定义相关变量*/struct vip/*结构体*/{char name[10];char sex;int age;int point;};/*定义各函数*/struct vip vi[100];void menu();void input();void del();void point();void del();void add();void search();void quit();int load();void save(int m);void loading();void window();void list();/*退出函数*/void quit(){system("cls");printf("\n\n\n");printf("\t\t************************************************\n\n"); printf("\t\t************谢谢您使用428网吧管理系统***********\n\n"); printf("\t\t *★*∵◢◣* *↘○☆*∴★* *◢◣*○∴* \n");printf("\t\t *○↙◢■◣○*∴★* ∵**↙* ◢■◣* ∵* \n");printf("\t\t ↘∵◢許願◣*◆*↙*↘*○*◢幸福◣*↙* \n");printf("\t\t *☆◢■☆■◣★* ∴* *◆◢■☆■◣* ☆\n");printf("\t\t ○◢心想事成◣∵* ↙○*☆◢圣诞快樂◣↙* \n");printf("\t\t * ◢■■■■■◣* ∴★* ◢■*~★~*■◣○\n");printf("\t\t ★∵*∴◢◣* *☆∵*↘*∴○*◢◣* ☆* ☆\n");printf("\t\t ★∵★∴☆∵☆∴★∵★∴☆∵☆∴★∵★∴☆\n\n");printf("\t\t*************通信工程0802第一小组***************\n\n"); printf("\t\t************************************************\n\n\n\n\n"); }/*登陆函数*/void loading(){int x,y=123456;system("cls");printf("提示:密码为123456\n");printf("\n\n\n\n\n\n");printf("\t\t\t请输入登录密码:");scanf("%d",&x);if(x==y)menu();else if(x!=y){printf("\n\n\n\t\t\t密码错误!按任意键返回...");getch();window();}}/*菜单函数*/void menu(){int x;system("cls");printf("\t ******************************************************\n"); printf("\t ** **\n"); printf("\t ** 会员管理**\n"); printf("\t ** **\n"); printf("\t ******************************************************\n"); printf("\t\t\t1----输入会员信息\n");printf("\t\t\t2----所有会员信息\n");printf("\t\t\t3----查找会员信息\n");printf("\t\t\t4----增加会员信息\n");printf("\t\t\t5----删除会员信息\n");printf("\t\t\t6----会员积分管理\n");printf("\t\t\t7----退出管理系统\n");printf("请选择服务:\t");L:scanf("%d",&x);if(x>=1&&x<=7){switch(x){case 1:input();break;case 2:list();break;case 3:search();break;case 4:add();break;case 5:del();break;case 6:point();break;case 7:quit();break;}}else{printf("选择非法项,请重新输入选择:");goto L;} }/*输入函数*/void input(){int i,m;system("cls");printf("请输入要添加会员数:\n");scanf("%d",&m);for (i=0;i<m;i++){printf("请输入会员名: ");scanf("%s",vi[i].name);getchar();printf("请输入性别: (m--男f--女) ");scanf("%s",&vi[i].sex);printf("请输入年龄: ");scanf("%d",&vi[i].age);printf("\n\n");}printf("\n\n\t\t\t\t添加成功!\n");save(m);printf("\n\n\n按任意键返回菜单...");getch();menu();}/*保存文件函数*/void save(int m){int i;FILE*fp;if ((fp=fopen("vip_list","wb"))==NULL) /*创建文件并判断是否能打开*/ {printf ("无法打开文件!\n");printf("\n\n\n按任意键返回菜单...");getch();menu();}for (i=0;i<m;i++) /*将内存中会员的信息输出到磁盘文件中去*/ if (fwrite(&vi[i],sizeof(struct vip),1,fp)!=1)printf("文件读写错误!\n");fclose(fp);}/*导入函数*/int load(){FILE*fp;int i=0;if((fp=fopen("vip_list","rb"))==NULL){printf ("无法打开文件!\n");printf("\n\n\n按任意键返回菜单...");getch();menu();}else{do{fread(&vi[i],sizeof(struct vip),1,fp);i++;}while(feof(fp)==0);}fclose(fp);return(i-1);}/*列表函数*/void list(){int i;int m=load();system("cls");printf("\n\n\n\t会员名\t性别\t年龄\t积分\n");for(i=0;i<m;i++)printf("\n\n\n\t%s\t%c\t%d\t%d\n",vi[i].name,vi[i].sex,vi[i].age,vi[i].point); printf("\n\n\n按任意键返回菜单...");getch();menu();}/*删除函数*/void del(){int i,j,n,flag;char name[10];int m=load();system("cls");printf("请输入要删除的会员名:\n");scanf("%s",name);getchar();for(flag=1,i=0;flag&&i<m;i++){if(strcmp(vi[i].name,name)==0){printf("\n此会员信息为:\n");printf("\n\n\n\t会员名\t性别\t年龄\n");printf("\n\n\n\t%s\t%c\t%d\t%d\n",vi[i].name,vi[i].sex,vi[i].age,vi[i].point);printf("\n确实删除请按1,否认删除请按0\n");scanf("%d",&n);}if(n==1) /*如果删除,则其他的信息都往上移一行*/{for(j=i;j<m-1;j++){strcpy(vi[j].name,vi[j+1].name);vi[j].sex=vi[j+1].sex;vi[j].age=vi[j+1].age;vi[j].point=vi[j+1].point;}flag=0;}}if(!flag)m=m-1;elseprintf("\n您所查找的会员信息不存在!\n");save(m);printf("\n\n\n按任意键返回菜单...");getch();menu();}/*查找函数*/void search(){char name[10];int i;int m=load();system("cls");printf("\n\n\t\t请输入要查找会员名:");scanf("%s",&name);{ for(i=0;i<m;i++)if(strcmp(vi[i].name,name)==0){printf("\n\n您的会员信息为:\n");printf("\n\n\t会员名\t性别\t年龄\n");printf("\n\n\t%s\t%c\t%d\n",vi[i].name,vi[i].sex,vi[i].age );printf("\n\n\n\n\n\n\n\n\n\n按任意键返回菜单...");getch();menu();}}if(i==m)printf("\n\n\n\t\t您所查找的会员信息不存在!\n");printf("\n\n\n\n\n\n\n\n\n\n\n按任意键返回菜单...");getch();menu();}/*增加函数*/void add(){int n;int a=0;int i,j;int m=load();system("cls");{printf("\t\t\t请输入想增加的会员数:");scanf("%d",&n);for (j=m;j<(m+n);j++){printf("\n\t\t\t 请输入新增会员的信息:\n");printf("请输入会员名: ");P:scanf("%s",vi[j].name);getchar();for(i=0;i<m;i++)if(strcmp(vi[i].name,vi[j].name)==0){printf("您输入的会员名已存在!请重新输入:");goto P;} printf("请输入性别: ");scanf("%s",&vi[j].sex);printf("请输入年龄: ");scanf("%d",&vi[j].age);a++;}printf("\n\n\t\t\t恭喜您,添加会员信息成功!\n");m=m+a;save(m);}printf("\n\n\n按任意键返回菜单...");getch();menu();}/*积分函数*/void point(){int i;char name[10];float t,l;int m=load();system("cls");printf("请输入您的会员名:");scanf("%s",&name);for(i=0;i<m;i++)if(strcmp(vi[i].name,name)==0){printf("\n请输入已使用小时数:");scanf("%f",&t);l=t;vi[i].point+=(int)l;printf("\n您的会员%s共积%d分",vi[i].name,vi[i].point);save(m);printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n按任意键返回菜单...");getch();menu();}if(i==m){printf("\n\n\n\n\n\t\t\t此会员名不存在!\n");printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n按任意键返回重新输入...");getch();point();}}/*界面函数*/void window(){int x;system("cls");printf("\n\n\n\n\n");printf("\t\t***************************************************\n");printf("\t\t** **\n");printf("\t\t** **\n");printf("\t\t** **\n");printf("\t\t** 欢迎进入使用428网吧管理系统**\n");printf("\t\t** **\n");printf("\t\t** **\n");printf("\t\t** **\n");printf("\t\t***************************************************\n");printf("\t\t\t\t1----登陆\n");printf("\t\t\t\t2----退出系统\n\n\n\n");printf("请选择:\t");L:scanf("%d",&x);if(x==2)quit();else if(x==1)loading();else{printf("选择非法项!请重新输入选择:");goto L;}}/*主函数*/void main(){window();}19。

相关文档
最新文档