1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > c语言程序设计超市会员卡管理系统 C语言程序设计课程设计报告超市水果信息管理系统...

c语言程序设计超市会员卡管理系统 C语言程序设计课程设计报告超市水果信息管理系统...

时间:2023-05-08 03:20:05

相关推荐

c语言程序设计超市会员卡管理系统 C语言程序设计课程设计报告超市水果信息管理系统...

《C语言程序设计课程设计报告超市水果信息管理系统》由会员分享,可在线阅读,更多相关《C语言程序设计课程设计报告超市水果信息管理系统(28页珍藏版)》请在人人文库网上搜索。

1、西 安 邮 电 大 学(计算机学院)高级语言课程设计报告题 目: 超市水果信息管理系统专业名称: XXXX班 级: XXXX学生姓名: XXXX学号(8位): XXXXXXX指导教师: XXXX设计起止时间: 12月9日12月18日1 设计目的 熟练掌握C语言课程中学习到的理论知识,通过一个信息管理系统的实现来加强对C语言结构体数组,文件操作的理解,运用C语言的知识解决实际问题。2 设计内容通过C语言实现一个水果信息管理系统。每一种水果都有对应的编号,名称,保质期(天),库存量(kg)。系统功能包括:1. 欢迎界面,包括用户名,密码。2. 主界面,有各个模块的选择,如信息录。

2、入,信息显示,信息查找,信息排序,信息插入,信息修改,信息删除以及退出系统。可以实现不同的功能。三概要设计1.功能模块图编号与名称是否匹配1. 按库存量排序2. 按编号排序2. 按编号查找1. 按名称查找3. 查找水果信息2. 显示水果信息4. 排序水果信息7. 删除水果信息5. 插入水果信息6. 修改水果信息1. 录入水果信息0. 退出系统根据菜单输入的值选择程序菜 单登 录开 始成功失败NY继续操作Y退出系统102. 各个模块详细的功能描述(1).登陆模块 输入用户名和密码,若用户名和密码匹配,则进入主菜单中,若不匹配,继续输入。(2).录入模块录入水果信息,包括水果编号,水果名称,保质期。

3、(天),库存量(kg)。并输出你要录入的水果信息。若继续录入选择1,结束录入并返回主菜单选择0。(3).显示模块将此时文件所保存的水果信息全部显示,并显示共有多少种水果。这里有一个统计文件行数的函数,在显示模块中调用。(4).查找模块分为按水果名称查找和按水果编号查找。并显示所查找的水果信息。(5).排序模块分为按水果库存量排序和按水果编号排序,并显示排序所得结果。(6).插入模块输入要插入的水果的信息,并显示在屏幕上,确认是否插入。(7).修改模块输入要修改的水果的编号,并输入要修改的水果的名称,判断其是否匹配,若匹配,则显示其完整信息,并选择修改哪一项,输入要修改的项目的编号,修改成功后,。

4、写入文件;若不匹配,则显示“sorry,没有这个水果的数据”。(8).删除模块输入要删除的水果的编号,并输入要删除的水果的名称,判断其是否匹配,若匹配,则显示其完整信息,并选择是否删除,若删除,则删除成功后,写入文件;若不匹配,则显示“sorry,没有这个水果的数据”。四. 详细设计1. 功能函数的调用关系图(1).各功能函数void menu();/主菜单void welcome();/登录界面void input();/ 录入int line_number(FILE *a); / 统计文件行数void output_all(); /显示全部数据void search();/查找 void 。

5、sort(); / 排序void write_file(struct drug *p,int n); /重新将数据写入文件struct drug import();/水果信息void insert();/ 插入void alter();/修改void delect();/删除(2).功能函数的调用关系Welcome( )(递归调用)Menu( )import( )Input( )(递归调用)Output_all( ) line_number(FILE *a)Main( )Search( ) line_number(FILE *a)write_file(struct drug *p,int n)。

6、Insert( ) line_number(FILE *a)write_file(struct drug *p,int n)alter( ) line_number(FILE *a)line_number(FILE *a)Sort( )write_file(struct drug *p,int n)Delect() line_number(FILE *a)write_file(struct drug *p,int n)开 始2.各功能函数的数据流程图(1).登陆定义用户名数组char name10,定义密码数组char code10,定义变量i。输入用户名与密码用户名与密码是否匹配 N Y进入。

7、主菜单开 始(2).录入定义一个结构体类型的水果,定义一个文件,定义一个变量f调用import()函数实现录入水果信息,并把水果信息存在文件中继续录入1 0返回主菜单(3) 显示开 始定义一个文件,定义一个结构体类型的指针变量,定义变量n,i和choice打开文件,并调用line_number(FILE *a)函数从文件中读取存入的水果信息,并打印在屏幕上输入1Y N继续输入,为1止返回主菜单(4). 查找开 始定义一个文件,定义变量n,i,j,choose,choice及num.定义一个结构体类型的指针变量,定义char name10打开文件,并调用line_number(FILE *a)函。

8、数从文件中读取存入的水果信息按水果名称查找还是按水果编号查找 按水果名称查找1 2按水果编号查找输入1 Y N继续输入,为1止返回主菜单(5)排序开 始定义一个文件,定义变量n,i,j及choice。定义结构体数组类型的指针变量和普通变量打开文件,并调用line_number(FILE *a)函数从文件中读取存入的水果信息按水果库存量排序或按水果编号排序1 2按水果编号排序按水果库存量排序是否保存到文件中1 2不 保 存保 存输入1继续输入,为1止返回主菜单(6).插入开 始定义一个文件,定义变量n,i,j,choose,choice及num.定义一个结构体类型的指针变量打开文件,并调用lin。

9、e_number(FILE *a)函数输入要插入的水果信息通过比较得到正确的插入位置,并插入是否确认其插入 输入错误,请重新输入写入文件中1 2 (7)修改开 始定义一个文件,定义变量n,i,j,choose,choice及num.定义一个结构体类型的指针变量,定义char name10打开文件,并调用line_number(FILE *a)函数从文件中读取存入的水果信息输入水果编号,输入水果名称判断编号与名称是否匹配输入错误,请重新输入显示水果信息Y N选择要修改的项目,并输入其编号已正确修改,并保存在文件中(8) 删除开 始定义一个文件,定义变量n,i,j,k,r,choose,choic。

10、e及num.定义一个结构体类型的指针变量,定义char name10打开文件,并调用line_number(FILE *a)函数从文件中读取存入的水果信息输入水果编号,输入水果名称判断编号与名称是否匹配 显示水果信息Y N输入错误,请重新输入是否删除 已正确删除,并保存于文件中请输入1,继续操作Y N3.重点设计及编码int line_number(FILE *a) / 统计文件行数int n;char ch;n = 0;while(ch = fgetc(a) != EOF)if(ch = n)n +;rewind(a); /重新定位文件指向文件开头return n;void write_fi。

11、le(struct drug *p,int n) /重新将数据写入文件FILE *fp;int i;if(fp = fopen(data.txt,w) = NULL) printf(打开文件失败n);exit(0);for(i=0;i#include #include #includevoid menu();/主菜单void welcome();/登录界面void input();/ 录入int line_number(FILE *a); / 统计文件行数void output_all(); /显示全部数据void search();/查找 void sort(); / 排序void writ。

12、e_file(struct drug *p,int n); /重新将数据写入文件struct drug import();/水果信息void insert();/ 插入void alter();/修改void delect();/删除int flag1 = 1;struct drugint num;/水果编号char name10;/水果名称int save_day;/水果有效期int inv;/水果库存量;/主函数int main()int choice;welcome();while(flag1)system(cls);menu();scanf(%d,&choice);if(choice7。

13、) printf(输入错误,请重新选择n);menu();scanf(%d,&choice);switch (choice)case 1:input();break; /输入case 2:output_all();break;/ 显示case 3:search();break; /查找case 4:sort();break;/ 排序case 5:insert();break;/ 插入case 6:alter();break;/修改case 7:delect();break;/删除case 0:flag1 = 0;break;/退出return 0;/登陆模块void welcome()int 。

14、i;char name10;char code10; printf(nnn);printf( (.) n);printf( +-oOOo-(_)-oOOo-+ nn);printf( 欢 迎 使 用. n);printf( n);printf(nnnnnn 用户名: );gets(name);printf(nnn 密码: );for(i=0;i水果编号: );scanf(%d,&a.num);printf(n -水果名称: );scanf(%s,a.name);printf(n -有效期(天): );scanf(%d,&a.save_day);printf(n -库存量(kg): )scanf。

15、(%d,&a.inv);printf(nn您输入的水果数据为:nn);printf( 水果编号 水果名称 保质期 库存量nn);printf(%d %s %d %dnn,a.num,a.name,a.save_day,a.inv);return a;int line_number(FILE *a) / 统计文件行数int n;char ch;n = 0;while(ch = fgetc(a) != EOF)if(ch = n)n +;rewind(a); /重新定位文件指向文件开头return n;/显示信息模块void output_all() FILE *fp;int n;int i;st。

16、ruct drug *p;int choice;system(cls);if(fp = fopen(data.txt,r) = NULL) printf(打开文件失败n);exit(0);n = line_number(fp); printf(n *共计%d种水果*nn,n);p = (struct drug *)malloc(n *(sizeof(struct drug);printf(t水果编号t水果名称t保质期tt库存量nnn);for(i=0;ipi+1.inv)temp = pi;pi = pi+1;pi+1 = temp;printf(水果编号t水果名称t保质期tt库存量nn);for(i=0;ipi+1.num)temp = pi;pi = pi+1;pi+1 = temp;printf(水果编号t水果名称t保质期tt库存量nn);for(i=0;ipi+1.num)temp = pi;pi = pi+1;pi+1 = temp;printf(Sure?(是:1,否:2):);scanf(%d,&i);whi。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。