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 数据流图(系统的数据流程图,并进行说明)输出结果,并做记录,等待下次输入显示出错情况,等待用户修改求值判断表达式是否有错输入表达式出现错误,中断扫描以一个编缉框接受用户输入的表达式,输入须用软件提供的软键盘。

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

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

《通信工程专业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();可以实现退出、登陆、菜单、输入、保存、导入、列表、界面、增加、删除、查找、积分。

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

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

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

知识目标要求学生掌握网吧管理系统的功能、原理和操作方法;技能目标要求学生能够运用C语言进行简单的程序设计,并具备一定的问题解决能力;情感态度价值观目标要求学生树立正确的网络道德观念,明确网络游戏对青少年身心健康的影响。

通过本课程的学习,学生将了解网吧管理系统的背景和发展趋势,掌握基本的数据结构和算法,提高编程能力,为今后的学习和工作打下坚实的基础。

同时,学生能够认识到网络游戏的利弊,养成良好的网络行为习惯,健康成长。

二、教学内容本课程的教学内容主要包括网吧管理系统的功能介绍、C语言的基本语法、数据结构、算法和编程实践。

具体安排如下:1.网吧管理系统的功能介绍:讲解网吧管理系统的起源、发展及其在现实生活中的应用,使学生了解网吧管理系统的重要性。

2.C语言的基本语法:介绍C语言的基本语法规则,包括数据类型、变量、运算符、控制语句等,为学生编程打下基础。

3.数据结构:讲解常用的数据结构,如数组、链表、栈和队列等,培养学生解决实际问题的能力。

4.算法:介绍常用的排序和查找算法,使学生能够分析问题、设计算法并解决问题。

5.编程实践:通过实际项目案例,让学生动手编写代码,提高学生的编程能力和问题解决能力。

三、教学方法为了激发学生的学习兴趣和主动性,本课程将采用多种教学方法,如讲授法、讨论法、案例分析法和实验法等。

1.讲授法:教师讲解基本概念、原理和知识点,帮助学生建立知识体系。

2.讨论法:学生就某一问题进行讨论,培养学生的思维能力和团队协作精神。

3.案例分析法:分析现实生活中的实际案例,使学生能够将理论知识应用于实际问题。

4.实验法:让学生动手编写代码,培养学生的实际操作能力和创新意识。

四、教学资源本课程将采用教材、参考书、多媒体资料和实验设备等教学资源。

教材和参考书为学生提供理论知识的学习资料;多媒体资料丰富教学手段,帮助学生更好地理解课程内容;实验设备为学生提供动手实践的机会,提高学生的实际操作能力。

管理系统C语言课程设计

管理系统C语言课程设计

管理系统C语言课程设计一、课程目标知识目标:1. 掌握C语言的基本语法和结构,能运用C语言进行简单的程序设计;2. 了解管理系统的基本概念和功能需求,能运用C语言实现管理系统的基本功能;3. 理解指针和内存管理的重要性,能运用指针完成管理系统中的数据操作。

技能目标:1. 能运用结构体、数组等数据结构组织和存储管理系统的数据;2. 掌握文件操作,实现数据的持久化存储;3. 学会运用模块化编程思想,将管理系统功能划分为独立的函数,提高代码可读性和可维护性。

情感态度价值观目标:1. 培养学生对C语言的兴趣,激发学习编程的热情;2. 培养学生面对问题主动思考、分析、解决问题的能力;3. 培养学生的团队协作精神,学会在团队中发挥个人优势,共同完成任务。

课程性质:本课程为实践性较强的课程,旨在通过设计一个具体的管理系统项目,让学生将所学C语言知识应用于实际项目中,提高学生的编程能力和实践能力。

学生特点:学生具备一定的C语言基础,对编程有一定兴趣,但缺乏实际项目经验。

教学要求:注重理论与实践相结合,引导学生主动参与项目设计,培养其独立思考和解决问题的能力。

通过课程学习,使学生具备独立完成管理系统C语言课程设计的能力。

在教学过程中,关注学生的学习进度和情感态度,及时调整教学策略,确保课程目标的实现。

二、教学内容1. C语言基础知识复习:包括数据类型、运算符、表达式、控制结构等基本概念,涉及教材第1-3章内容。

2. 函数与模块化编程:介绍函数的定义、调用、参数传递等,强调模块化编程思想,涉及教材第4章内容。

3. 结构体与数组:讲解结构体的定义和使用,以及结构体数组的应用,涉及教材第5章内容。

4. 指针与内存管理:深入讲解指针的概念、运算和应用,内存分配与释放,涉及教材第6章内容。

5. 文件操作:介绍文件的基本操作,包括文件的打开、读写、关闭等,涉及教材第7章内容。

6. 管理系统功能需求分析:分析管理系统的功能模块,明确各模块的功能需求,引导学生进行需求分析。

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

C语言课程设计(网吧管理系统)
printf("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");
printf("请选择(0-6):");
scanf("%d",&choise);getchar();
switch(choise)
printf("请输入姓名:\n");scanf("%s",temp->name);getchar();
printf("请输入身份证号码:\n");scanf("%s",temp->tele);getchar();
if (head==NULL)
{
head=temp;
temp->next=NULL;
}
printf("\t\t 1.会员上机\n");
printf("\t\t 2.显示会员\n");
printf("\t\t 3.查找\n");
printf("\t\t 4.临时人员上机\n");
printf("\t\t 5.会员下机\n");
printf("\t\t 0.退出\n");
printf("\n");
网吧管理系统流程图见如2.
图2.网吧管理系统主要流程图
2.3.源程序
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>

网吧管理系统课程设计

网吧管理系统课程设计

网吧管理系统课程设计一、课程目标知识目标:1. 让学生理解网吧管理系统的基本概念、功能模块及其运行原理;2. 掌握网吧管理系统的数据库设计、业务流程及关键算法;3. 了解网吧管理系统在现实生活中的应用,以及与所学课程的关联。

技能目标:1. 培养学生运用所学知识,设计并实现一个简单的网吧管理系统;2. 提高学生分析问题、解决问题的能力,使其能够根据实际需求,对网吧管理系统进行优化和改进;3. 培养学生团队协作、沟通表达的能力,通过项目实践,掌握软件开发的基本流程。

情感态度价值观目标:1. 培养学生对计算机科学技术的兴趣,激发其探索精神;2. 增强学生的社会责任感,使其认识到网吧管理系统在规范市场、保障消费者权益等方面的重要性;3. 引导学生树立正确的价值观,认识到技术应用于社会的重要性,遵循法律法规,拒绝不良信息。

课程性质:本课程为信息技术与课程整合的实践性课程,旨在培养学生运用所学知识解决实际问题的能力。

学生特点:高年级学生,已具备一定的编程基础和数据库知识,具备较强的自学能力和团队协作意识。

教学要求:结合学生特点和课程性质,注重理论与实践相结合,强调项目实践,提高学生的动手能力和创新能力。

在教学过程中,关注学生的个体差异,因材施教,确保每个学生都能在课程中取得实际的学习成果。

通过课程学习,使学生能够将所学知识应用于实际项目中,为未来的职业发展打下坚实基础。

二、教学内容1. 网吧管理系统的基本概念与功能模块- 系统概述:介绍网吧管理系统的定义、作用及其在现实生活中的应用;- 功能模块:分析网吧管理系统的常见功能模块,如用户管理、计费管理、机器管理、库存管理等。

2. 网吧管理系统的数据库设计- 数据库原理:回顾数据库的基本概念、设计方法及SQL语言;- 实践操作:指导学生设计网吧管理系统的数据库结构,包括表结构设计、字段定义等。

3. 网吧管理系统的业务流程与关键算法- 业务流程:介绍网吧管理系统的核心业务流程,如用户登录、计费、机器分配等;- 关键算法:分析并讲解实现业务流程的关键算法,如计时计费算法、机器状态检测等。

C与C

C与C

C与C++课程设计报告设计题目:网吧管理系统专业班级学生学号指导教师起止时间2013年秋季学期一、具体任务题目:网吧管理系统问题描述:建立一个网吧管理系统,可以处理以下对象:(1)网吧基本信息(2)顾客信息(身份证号,是否会员)(3)网管信息(4)电脑信息设计一个网吧管理系统(GUI界面),使之能提供以下基本功能:(1)查询网吧的总信息。

(2)查询网管的信息。

(3)查询顾客的信息。

(4)增加顾客(顾客类型:是否会员;分配的机位;上机时间)(5)顾客结账(根据顾客类型以及上机时间确定收费金额)。

(6)增加新的网管(一台电脑只能由一个网管负责)。

(7)增加新的电脑二、编译环境Microsoft visual C++ 6.0MFC AppWizard(.exe)平台实现三、算法设计思想1、主界面管理员登录信息查询信息操作电脑信息网管信息顾客信息网吧信息增加电脑增加网管增加顾客结账2、类视图(1)对话框类(2)自定义类四、源代码1、界面操作(ChildView.cpp )void CChildView::OnOPADDWMaster() //新增网管{// TODO: Add your command handler code here//AfxMessageBox("HI");CDlgNewWmaster dlg;if (dlg.DoModal() == IDOK){Wmaster wmaster;wmaster.id = ++Wmaster::id_base;um = dlg.m_cnum; = dlg.m_wname;CProjectApp* app = (CProjectApp*)AfxGetApp();app->m_data.m_wmasters.push_back(wmaster);char buf[100];itoa(wmaster.id, buf, 10);m_listCtrl.InsertItem(0, buf);m_listCtrl.SetItemText(0, 1, dlg.m_wname);m_listCtrl.SetItemText(0, 2, dlg.m_cnum);}}void CChildView::OnVIEWWebbar() //网吧信息{// TODO: Add your command handler code hereCWebBar dlg;dlg.m_cmptr=Computer::id_base;dlg.m_VIP=Customer::id_base;dlg.m_wmaster=Wmaster::id_base;dlg.DoModal();}void CChildView::OnOPADDCustomer() //新增顾客{// TODO: Add your command handler code hereCAddCustomer dlg;Customer customer; //将对话框中数据存入文件if (dlg.DoModal() == IDOK){customer.id = ++Customer::id_base;char buf[100];itoa(customer.id, buf, 10);dlg.m_wID=buf;customer.ID = dlg.m_ID; = dlg.m_name;customer.time = dlg.m_time;customer.type = dlg.m_type;um = dlg.m_cnum;customer.wID = dlg.m_wID;customer.remain = dlg.m_remain;CProjectApp* app = (CProjectApp*)AfxGetApp();app->m_data.m_customers.push_back(customer);char time[100];char remain[100];sprintf(time,"%.1f",dlg.m_time);sprintf(remain,"%.1f",dlg.m_remain);m_listCtrl.InsertItem(0, buf);m_listCtrl.SetItemText(0, 1, dlg.m_name);m_listCtrl.SetItemText(0, 2, dlg.m_ID);m_listCtrl.SetItemText(0, 3, dlg.m_type);m_listCtrl.SetItemText(0, 4, dlg.m_cnum);m_listCtrl.SetItemText(0, 5, time);m_listCtrl.SetItemText(0, 6, dlg.m_wID);m_listCtrl.SetItemText(0, 7, remain);}}void CChildView::OnOPADDComputer() //新增电脑{// TODO: Add your command handler code hereCDlgNewComputer dlg;if (dlg.DoModal() == IDOK){Computer computer;computer.id = ++Computer::id_base;um = dlg.m_cnum;computer.master_name = dlg.m_wmaster;CProjectApp* app = (CProjectApp*)AfxGetApp();app->m_data.m_computers.push_back(computer);char buf[100];itoa(computer.id, buf, 10);m_listCtrl.InsertItem(0, buf);m_listCtrl.SetItemText(0, 1, dlg.m_cnum);m_listCtrl.SetItemText(0, 2, dlg.m_wmaster);}}void CChildView::OnOpPay() //结账{// TODO: Add your command handler code hereCDlgPay dlg;CProjectApp* app = (CProjectApp*)AfxGetApp();if(dlg.DoModal()==IDOK){CDlgNextPay nextdlg;CWebBar web;//AfxMessageBox(dlg.m_ID);for (list<Customer>::iterator i = app->m_data.m_customers.begin();i != app->m_data.m_customers.end(); ++i){if(i->wID.c_str()==dlg.m_wID){nextdlg.m_name=i->name.c_str();if(i->type.c_str()=="VIP")//根据顾客类型和上机时间计算应支付金额{nextdlg.m_money=(i->time)*(web.m_VIPp); } else{nextdlg.m_money=(i->time)*(web.m_normal);}nextdlg.DoModal();i->remain=nextdlg.m_remain;//余额保存到文件中}}}list<Customer>::iterator i;if(i==app->m_data.m_customers.end())AfxMessageBox("此会员号不存在!!!");}void CChildView::OnVIEWWebMaster() //网管信息{// TODO: Add your command handler code herem_content_type=ContentType_WMASTER;int n = m_listCtrl.GetHeaderCtrl()->GetItemCount();for (int i = n - 1; i >= 0; i--)m_listCtrl.DeleteColumn(i);m_listCtrl.DeleteAllItems();m_listCtrl.InsertColumn(0, "序号", LVCFMT_LEFT, 96);m_listCtrl.InsertColumn(1, "姓名", LVCFMT_LEFT, 200);m_listCtrl.InsertColumn(2, "机位", LVCFMT_LEFT, 96);{CProjectApp* app = (CProjectApp*)AfxGetApp();for (list<Wmaster>::iterator i = app->m_data.m_wmasters.begin(); i != app->m_data.m_wmasters.end(); ++i) {char buf[100];itoa(i->id, buf, 10);m_listCtrl.InsertItem(0, buf);m_listCtrl.SetItemText(0, 1, i->name.c_str());m_listCtrl.SetItemText(0, 2, i->cnum.c_str());}}}void CChildView::OnVIEWComputer() //电脑信息{// TODO: Add your command handler code herem_content_type=ContentType_COMPUTER;int n = m_listCtrl.GetHeaderCtrl()->GetItemCount();for (int i = n - 1; i >= 0; i--)m_listCtrl.DeleteColumn(i);m_listCtrl.DeleteAllItems();m_listCtrl.InsertColumn(0, "序号", LVCFMT_LEFT, 96);m_listCtrl.InsertColumn(1, "机号", LVCFMT_LEFT, 96);m_listCtrl.InsertColumn(2, "网管", LVCFMT_LEFT, 200);{CProjectApp* app = (CProjectApp*)AfxGetApp();for (list<Computer>::iterator i = app->m_data.m_computers.begin(); i != app->m_data.m_computers.end(); ++i) {char buf[100];itoa(i->id, buf, 10);m_listCtrl.InsertItem(0, buf);m_listCtrl.SetItemText(0, 1, i->cnum.c_str());m_listCtrl.SetItemText(0, 2, i->master_name.c_str());}}}void CChildView::OnVIEWCustomer() //顾客信息{// TODO: Add your command handler code herem_content_type=ContentType_CUSTOMER;int n = m_listCtrl.GetHeaderCtrl()->GetItemCount();for (int i = n - 1; i >= 0; i--)m_listCtrl.DeleteColumn(i);m_listCtrl.DeleteAllItems();m_listCtrl.InsertColumn(0, "序号", LVCFMT_LEFT, 96);m_listCtrl.InsertColumn(1, "姓名", LVCFMT_LEFT, 96);m_listCtrl.InsertColumn(2, "身份证号", LVCFMT_LEFT, 200);m_listCtrl.InsertColumn(3, "类型", LVCFMT_LEFT, 96);m_listCtrl.InsertColumn(4, "机号", LVCFMT_LEFT, 96);m_listCtrl.InsertColumn(5, "上机时间", LVCFMT_LEFT, 96);m_listCtrl.InsertColumn(6, "会员号", LVCFMT_LEFT, 96);m_listCtrl.InsertColumn(7, "余额", LVCFMT_LEFT, 96);{CProjectApp* app = (CProjectApp*)AfxGetApp();for (list<Customer>::iterator i = app->m_data.m_customers.begin(); i != app->m_data.m_customers.end(); ++i) {char buf[100];itoa(i->id, buf, 10);char time[100];char remain[100];sprintf(time,"%.1f",i->time);sprintf(remain,"%.1f",i->remain);m_listCtrl.InsertItem(0, buf);m_listCtrl.SetItemText(0, 1, i->name.c_str());m_listCtrl.SetItemText(0, 2, i->ID.c_str());m_listCtrl.SetItemText(0, 3, i->type.c_str());m_listCtrl.SetItemText(0, 4, i->cnum.c_str());m_listCtrl.SetItemText(0, 5, time);m_listCtrl.SetItemText(0, 6, i->wID.c_str());m_listCtrl.SetItemText(0, 7, remain);}}}int CChildView::OnCreate(LPCREATESTRUCT lpCreateStruct){if (CWnd ::OnCreate(lpCreateStruct) == -1)return -1;// TODO: Add your specialized creation code hereCRect rect;this->GetClientRect(rect);m_listCtrl.Create(WS_VISIBLE | LVS_REPORT, rect, this, 0); //创建一个listctrl控件this->OnVIEWCustomer();return 0;}void CChildView::OnSize(UINT nType, int cx, int cy){CWnd ::OnSize(nType, cx, cy);// TODO: Add your message handler code hereCRect rect;this->GetClientRect(rect);m_listCtrl.MoveWindow(rect);}//设置在网管界面中不能操作其他信息void CChildView::OnUpdateOPADDWMaster(CCmdUI* pCmdUI){// TODO: Add your command update UI handler code herepCmdUI->Enable(m_content_type == ContentType_WMASTER);}void CChildView::OnUpdateVIEWWebbar(CCmdUI* pCmdUI){// TODO: Add your command update UI handler code herepCmdUI->SetRadio(m_content_type == ContentType_WMASTER); }//设置在电脑信息界面中不能操作其他信息void CChildView::OnUpdateOPADDComputer(CCmdUI* pCmdUI){// TODO: Add your command update UI handler code herepCmdUI->Enable(m_content_type == ContentType_COMPUTER); }void CChildView::OnUpdateVIEWComputer(CCmdUI* pCmdUI){// TODO: Add your command update UI handler code herepCmdUI->SetRadio(m_content_type == ContentType_COMPUTER); }//设置在顾客信息界面中不能操作其他信息void CChildView::OnUpdateOPADDCustomer(CCmdUI* pCmdUI){// TODO: Add your command update UI handler code herepCmdUI->Enable(m_content_type == ContentType_CUSTOMER); }void CChildView::OnUpdateVIEWCustomer(CCmdUI* pCmdUI){// TODO: Add your command update UI handler code herepCmdUI->SetRadio(m_content_type == ContentType_CUSTOMER);}2、顾客结账对话框(DlgNextPay.cpp)void CDlgNextPay::OnBtnPay(){// TODO: Add your control notification handler code herethis->UpdateData(); //将控件中数据赋给变量if(m_pay==0)AfxMessageBox("请支付!!");else{if((m_pay-m_money)<0)AfxMessageBox("支付金额应大于应付金额,请重新输入!!");else{m_remain=m_pay-m_money;CAddCustomer dlg1;dlg1.m_remain=m_remain;AfxMessageBox("支付成功!!");}}this->UpdateData(FALSE);//将变量中数据赋给对话框}3、自定义数据类及数据的存储(data.h、data.cpp)//data.h#pragma oncestruct Wmaster //网管信息{int id;std::string cnum; //机位std::string name; //姓名static int id_base;};struct Customer //顾客信息{int id;std::string name; //姓名std::string type; //类型std::string cnum; //机位float time; //上机时间float remain; //余额std::string ID; //身份证号std::string wID; //会员号static int id_base;};struct Computer //电脑信息{int id;std::string cnum; //机位std::string master_name; //网管static int id_base;};struct Webbar //网吧信息{//int id;int cmptr; //电脑总数int wmaster; //网管总数int VIP; //VIP总数//static int id_base;};class Data {public:void loadFromFile();void saveToFile();std::list<Wmaster> m_wmasters; std::list<Customer> m_customers; std::list<Computer> m_computers; Webbar webbar;};//data.cpp#include "stdafx.h"#include "data.h"using namespace std;int Wmaster::id_base;int Customer::id_base;int Computer::id_base;void Data::loadFromFile(){{// 网管信息.txtifstream ifs;ifs.open("网管信息.txt");if (ifs.is_open()) {ifs >> Wmaster::id_base;Wmaster wmaster;while (ifs) {ifs >> wmaster.id;ifs >> um;ifs >> ;if (um != "")m_wmasters.push_back(wmaster);}}}// 顾客信息.txt{ifstream ifs;ifs.open("顾客信息.txt");if (ifs.is_open()) {ifs >> Customer::id_base;Customer customer;while (ifs) {ifs >> customer.id;ifs >> ;ifs >> customer.ID;ifs >> customer.type;ifs >> um;ifs >> customer.time;ifs >> customer.wID;ifs >> customer.remain;if ( != "")m_customers.push_back(customer);}}}//电脑信息.txt{ifstream ifs;ifs.open("电脑信息.txt");if (ifs.is_open()) {ifs >> Computer::id_base;Computer computer;while (ifs) {ifs >> computer.id;ifs >> computer.master_name;ifs >> um;if (um != "")m_computers.push_back(computer);}}}//网吧信息.txt{ifstream ifs;ifs.open("网吧信息.txt");if (ifs.is_open()) {Webbar webbar;ifs >> webbar.cmptr;ifs >> webbar.wmaster;ifs >> webbar.VIP;}}}void Data::saveToFile(){// 网管信息.txt{ofstream ofs;ofs.open("网管信息.txt");ofs << Wmaster::id_base << endl;for (list<Wmaster>::iterator i = m_wmasters.begin(); i != m_wmasters.end(); ++i) {ofs << i->id << endl;ofs << i->cnum << endl;ofs << i->name << endl;}}// 顾客信息.txt{ofstream ofs;ofs.open("顾客信息.txt");ofs << Customer::id_base << endl;for (list<Customer>::iterator i = m_customers.begin(); i != m_customers.end(); ++i) {ofs << i->id << endl;ofs << i->name << endl;ofs << i->ID << endl;ofs << i->type << endl;ofs << i->cnum << endl;ofs << i->time << endl;ofs << i->wID << endl;ofs << i->remain << endl;}}// 电脑信息.txt{ofstream ofs;ofs.open("电脑信息.txt");ofs << Computer::id_base << endl;for (list<Computer>::iterator i = m_computers.begin(); i != m_computers.end(); ++i) {ofs << i->id << endl;ofs << i->master_name << endl;ofs << i->cnum << endl;}}// 网吧信息.txt{ofstream ofs;ofs.open("网吧信息.txt");ofs << webbar.VIP << endl;ofs << webbar.cmptr << endl;ofs << webbar.wmaster << endl;}}五、运行结果1、主界面2、增加顾客3、增加电脑4、增加网管5、网吧信息6、结账六、收获与体会在此次课程设计中我发现了很多的问题,知道自己在程序设计方面的不足,为了很好的完成这次课程设计我查询了很多的书籍及编程论坛,对我程序设计能力有很大的提高,MFC的界面也比c++界面好看,让我对MFC充满了好奇心和无比的兴趣。

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

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

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

具体来说,知识目标包括掌握C语言的基本语法、数据结构、函数、指针等基本概念;技能目标包括能够使用C语言进行程序设计、调试和维护;情感态度价值观目标包括培养学生的团队合作意识、创新精神和对计算机科学的兴趣。

二、教学内容教学内容主要包括C语言的基本语法、数据结构、函数、指针等基本概念,以及如何运用这些知识设计并实现一个网吧管理系统。

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

2.第二章:数据类型和运算符,讲解C语言的基本数据类型和运算符。

3.第三章:控制语句,讲解C语言的条件语句和循环语句。

4.第四章:函数和指针,讲解函数的定义和调用,以及指针的使用。

5.第五章:数组和字符串,讲解数组和字符串的基本操作。

6.第六章:结构体和文件,讲解结构体的定义和使用,以及文件的读写操作。

7.第七章:网吧管理系统设计,运用所学知识设计并实现一个简单的网吧管理系统。

三、教学方法本课程采用讲授法、案例分析法和实验法相结合的教学方法。

在讲授基本概念和语法时,通过举例和案例分析,使学生更好地理解和掌握;在设计网吧管理系统时,引导学生通过实验和调试,提高编程能力和问题解决能力。

四、教学资源教学资源包括教材、参考书、多媒体资料和实验设备。

教材选用《C程序设计语言》作为主教材,参考书选用《C语言编程入门》和《C语言实例解析》。

多媒体资料包括PPT课件和编程实例视频,实验设备包括计算机和网络设备。

这些资源将有助于学生更好地学习和实践。

五、教学评估本课程的评估方式包括平时表现、作业和考试三个部分。

平时表现主要评估学生的课堂参与度、提问和回答问题的积极性等;作业主要评估学生的编程能力和对知识的理解应用,包括课后练习和实验报告;考试则评估学生的知识掌握程度和问题解决能力,分为期中考试和期末考试。

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

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

c语言网吧管理系统课程设计一、课程目标知识目标:1. 理解C语言的基本语法和程序结构,掌握面向过程的编程思想;2. 学会使用C语言进行数据存储、管理和查询;3. 掌握C语言中文件操作和字符串处理的相关方法;4. 了解网吧管理系统的基本功能需求。

技能目标:1. 能够运用所学知识,设计并实现一个简单的网吧管理系统;2. 培养学生分析问题、解决问题的能力,提高编程实践技能;3. 培养学生的团队协作能力,学会与他人共同完成任务。

情感态度价值观目标:1. 培养学生对编程的兴趣和热情,激发学习动力;2. 培养学生的创新意识,敢于尝试新方法解决问题;3. 增强学生的责任感和使命感,认识到编程技术在现实生活中的应用价值。

课程性质:本课程为实践性较强的课程,旨在培养学生运用C语言解决实际问题的能力。

学生特点:学生已具备一定的C语言基础,具有较强的学习能力和动手能力。

教学要求:结合学生特点,注重理论与实践相结合,充分调动学生的主观能动性,引导学生通过自主学习和团队合作,完成网吧管理系统的设计与实现。

在教学过程中,关注学生的个体差异,给予针对性的指导,确保每位学生都能达到课程目标。

将目标分解为具体的学习成果,便于教学设计和评估。

二、教学内容1. C语言基础语法复习:包括变量、数据类型、运算符、表达式、控制结构(顺序、选择、循环)等;2. 函数与模块化编程:函数定义、调用、参数传递、模块化设计;3. 数组与字符串:一维数组、二维数组、字符串处理函数;4. 文件操作:文件打开、关闭、读写、定位等操作;5. 结构体与链表:结构体的定义与使用、链表的概念、创建、插入、删除等操作;6. 网吧管理系统需求分析:功能模块划分、系统架构设计;7. 编程实现:分别实现用户管理、机器管理、费用管理等功能模块;8. 系统测试与优化:测试各功能模块的正确性、性能优化。

教学内容根据课程目标进行选择和组织,确保科学性和系统性。

教学大纲安排如下:第一周:C语言基础语法复习;第二周:函数与模块化编程;第三周:数组与字符串;第四周:文件操作;第五周:结构体与链表;第六周:网吧管理系统需求分析与设计;第七周:编程实现;第八周:系统测试与优化。

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

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

c 网吧管理系统课课程设计一、教学目标本节课的教学目标是让学生掌握C语言编程的基本技能,通过编写网吧管理系统,培养学生解决实际问题的能力。

具体目标如下:1.知识目标:(1)掌握C语言的基本语法和数据类型。

(2)了解函数的定义和调用。

(3)熟悉数组的声明和使用。

(4)掌握循环和条件语句的使用。

2.技能目标:(1)能够使用C语言编写简单的程序。

(2)具备阅读和理解他人代码的能力。

(3)能够独立分析和解决编程问题。

3.情感态度价值观目标:(1)培养学生对编程的兴趣和热情。

(2)培养学生团队合作的精神。

(3)培养学生勇于挑战自我的意识。

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

2.函数的定义和调用。

3.数组的声明和使用。

4.循环和条件语句的使用。

5.网吧管理系统的需求分析和设计。

三、教学方法为了达到本节课的教学目标,我们将采用以下几种教学方法:1.讲授法:讲解C语言的基本语法、数据类型、函数、数组等知识点。

2.案例分析法:通过分析网吧管理系统的需求,引导学生学会使用C语言解决实际问题。

3.实验法:让学生动手编写网吧管理系统,巩固所学知识。

4.讨论法:分组讨论,引导学生互相学习,提高团队协作能力。

四、教学资源为了支持本节课的教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:《C语言程序设计》。

2.参考书:《C语言编程实例解析》。

3.多媒体资料:PPT课件、网吧管理系统相关视频教程。

4.实验设备:计算机、编程环境(如Code::Blocks、Visual Studio等)。

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

2.作业:布置与课堂内容相关的编程作业,要求学生独立完成,占总评的30%。

3.考试:期末进行C语言编程考试,测试学生对课堂知识的掌握程度,占总评的40%。

  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。

相关文档
最新文档