欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    食堂就餐餐费管理系统2.docx

    • 资源ID:7344820       资源大小:111.23KB        全文页数:16页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    食堂就餐餐费管理系统2.docx

    1、食堂就餐餐费管理系统2沈 阳 航 空 工 业 学 院 课程设计学 号 200704021024 班 级 7402101 姓 名 田青林 指导教师 吴杰宏 2008 年 9月 8日沈阳航空工业学院课程设计任务书院系:电子信息工程 专业:电子信息工程 班级:7402101学号:200704021024 题目:食堂就餐餐费管理系统(2) 一、课程设计时间200809第1学期第2周,共计1周,20学时。二、课程设计内容用C语言编写软件完成以下任务:1录入学生信息和食谱信息;2就餐买单;3按学号查餐费。三、课程设计要求1. 程序质量: 贯彻结构化的程序设计思想。 用户界面友好,功能明确,操作方便。 用户

    2、界面中的菜单至少应包括“信息录入”、“就餐买单”、“查餐费(按学号)”、“退出”4项。 代码应适当缩进,并给出必要的注释,以增强程序的可读性。2. 课程设计说明书:课程结束后,上交课程设计说明书和源程序。课程设计说明书的格式和内容参见提供的模板。四、指导教师和学生签字指导教师:_ 学生签名:_五、说明书成绩六、教师评语 目录一、需求分析 1二、程序流程图 2三、核心技术的实现说明及相应程序段 7四、课设总结 10五、参考文献 11六、源程序 11一、需求分析经过对程序设计题目的分析可知,整个程序的设计实现大致分为四个模块,其中每一个模块对应一个函数,它们的功能分别是:添加学生数据函数,就餐修改

    3、学生数据函数,查询函数,充值时对学生数据的修改函数。1、添加学生数据函数 主要实现程序最初运行时学生数据的录入功能;2、就餐修改学生数据函数 按照学号对学生的餐费作出相应的减少以及次数的增加;3、查询函数 允许按照学号对学生的就餐信息进行查询;4、充值时对学生数据的修改函数 按照学号对学生的餐费做出相应的增加。除上面介绍的功能之外,程序还具有退出功能,根据需要终止程序的执行。另外在程序中直接将学生的就餐信息数据直接写入文件fresh.dat中,保证每次运行程序都可以采用原来的数据。二、程序流程图1、程序总体结构图当(1) 真输入值n=1? 假添加学生信息真 n=2? 假记录就餐真n=3? 假查

    4、询真n=5? 假充值 n=4? 真 假 退出图1程序总体结构图2、具体功能框图(1)添加学生数据函数add 以只写的方式打开d盘的fresh.dat文件不成功 真 假输出打开文件失败Return;输入录入学生的数量b将b值写入文件循环变量i=1当i=b时 输入学号 姓名 省份 惯用食谱 餐费 次数学生数据写入文件关闭文件图2 添加学生数据函数(2)读取学生数据reads图3读取学生数据(3)记录就餐函数buy;图4 记录就餐数据(4)充值函数chong(与上类似);图5 充值流程(5)查询函数show;图6 查询流程三、核心技术的实现说明及相应程序段本程序主要由四个自定义函数和一个主函数组成,

    5、其中主函数以菜单的形式调用其它函数来实现要求的所有功能。在这些函数当中,添加数据函数、修改数据函数和查询函数是程序中较为核心的部分,下面分别进行说明。1、添加数据函数 在文件(fresh.dat)不存在的情况下,首先由程序创建一个新文件,并将录入的学生信息写入该文件当中。具体的程序段如下:void add()/*录入学生信息 */FILE *fp; int b,i; struct student stu; if(fp=fopen(d:fresh.dat,wb)!=NULL)/*wb只写*/ printf(n请输入要添加的学生数量:n); scanf(%d,&b); putw(b,fp);/*把

    6、b输入文件中*/ for(i=1;i=b;i+) printf(n请输入%d学生的学号,姓名,省份,惯用食谱,费用,次数用空格分开,并按回车键确认:n,i); scanf(%s %s %s %s %f %d,stu.num,stu.name,stu.provience,stu.food,&stu.money,&stu.time); fwrite(&stu,sizeof(struct student),1,fp);/*依次写入*/ fclose(fp); 2、修改函数是在原有文件数据上对就餐的学生的餐费和就餐次数作出相应的调整。其中找出该学生时,用到了strcmp函数。void buy()/*记

    7、录就餐情况*/ struct student stuN,temp; int n,i; float m; FILE *fp; printf(n请输入要就餐的学生学号,按回车键确认:); scanf(%s,temp.num); read(stu,&n); for(i=0;i=n) printf(无此学生信息!); return; printf(n请输入此次就餐花费,按回车键确认:n); scanf(%f,&m); stui.money-=m; stui.time+; if(fp=fopen(d:fresh.dat,wb)=NULL) printf(打开文件失败!); return; printf(

    8、此次就餐费用为%f,m); putw(n,fp); for(i=0;in;i+) fwrite(&stui,sizeof(struct student),1,fp); fclose(fp);3、查询函数查询函数中也是用到了strcmp函数来找到需要查询的学生,然后从文件中输出该生的所有就餐信息。void show()/*查询学生的就餐信息*/ struct student stuN; int n,i; char number20; read(stu,&n); printf(请输入学生的学号,回车:); scanf(%s,number); for (i=0;i=n) printf(没有找到该生信

    9、息n); return; else printf(n 该生就餐信息为n); printf(学号%s、姓名%s,省份%s,惯用食谱%s,费用%f,次数%dn, stui.num,stui.name,stui.provience,stui.food,stui.money,stui.time);四、课设总结通过此次课设足足五天的审题,编程,修改,使我深深感到了课堂知识的有限性,有许多的知识需要靠课外的积累,然而作为现在的大学生很少有人去真正把知识学懂学透,似乎及格成了努力的上线,这一点我深感惭愧。其次我感觉编程绝对是一个细致的活,欲速则不达,自己很多时候想跳过几个似乎无关紧要的步骤,但结果往往使得程

    10、序不完善,运行起来容易出现“死角”。再者往往有的时候认为自己是对的但却一次次出现错误,自己半天可能看不出来但让别人一眼就能看出,所以向高手们请教必不可少。虽然只是简简单单的一个小程序,它能带给我们的东西要远比它的知识多得多五、参考文献1 谭浩强C程序设计北京:清华大学出版社,20052 刘成等C语言程序设计实验指导与习题集北京:中国铁道出版社,2006六、源程序#include#include#include#includestruct student#define N 30 char num20; char name10; char provience10; char food10; flo

    11、at money; int time; ;void read(struct student stuN,int *n)/*子函数read,*/ FILE *fp;/*定义文件指针类型变量*/ int i=0; if(fp=fopen(d:fresh.dat,rb)=NULL)/*rb的意思是只读*/ printf(文件打开失败!n); return; else *n=getw(fp);/*读取fp的下一个整数*/ for(i=0;i*n;i+) fread(&stui,sizeof(struct student),1,fp);/*从fp中读如前1中*/ fclose(fp);void add()

    12、/*录入学生信息 */FILE *fp; int b,i; struct student stu; if(fp=fopen(d:fresh.dat,wb)!=NULL)/*wb只写*/ printf(n请输入要添加的学生数量:n); scanf(%d,&b); putw(b,fp);/*把b输入文件中*/ for(i=1;i=b;i+) printf(n请输入%d学生的学号,姓名,省份,惯用食谱,费用,次数用空格分开,并按回车键确认:n,i); scanf(%s %s %s %s %f %d,stu.num,stu.name,stu.provience,stu.food,&stu.money,

    13、&stu.time); fwrite(&stu,sizeof(struct student),1,fp);/*依次写入*/ fclose(fp); void buy()/*记录就餐情况*/ struct student stuN,temp; int n,i; float m; FILE *fp; printf(n请输入要就餐的学生学号,按回车键确认:); scanf(%s,temp.num); read(stu,&n); for(i=0;i=n) printf(无此学生信息!); return; printf(n请输入此次就餐花费,按回车键确认:n); scanf(%f,&m); stui.m

    14、oney-=m; stui.time+; if(fp=fopen(d:fresh.dat,wb)=NULL) printf(打开文件失败!); return; printf(此次就餐费用为%f,m); putw(n,fp); for(i=0;in;i+) fwrite(&stui,sizeof(struct student),1,fp); fclose(fp);void show()/*查询学生的就餐信息*/ struct student stuN; int n,i; char number20; read(stu,&n); printf(请输入学生的学号,回车:); scanf(%s,num

    15、ber); for (i=0;i=n) printf(没有找到该生信息n); return; else printf(n 该生就餐信息为n); printf(学号%s、姓名%s,省份%s,惯用食谱%s,费用%f,次数%dn, stui.num,stui.name,stui.provience,stui.food,stui.money,stui.time);void chong() struct student stuN,temp; int n,i; float m; FILE *fp; printf(n请输入学生学号,按回车键确认:); scanf(%s,temp.num); read(stu

    16、,&n); for(i=0;i=n) printf(无此学生信息!); return; printf(n请输入此次充值费用,按回车键确认:n); scanf(%f,&m); stui.money+=m; if(fp=fopen(d:fresh.dat,wb)=NULL) printf(打开文件失败!); return; printf(此次充值费用为%f,m); putw(n,fp); for(i=0;in;i+) fwrite(&stui,sizeof(struct student),1,fp); fclose(fp);void main()printf(n*食堂就餐费管理系统*);printf(n 1、添加学生信息 );printf(n 2、记录就餐情况 );printf(n 3、查询学生餐费 );printf(n 4、退出程序 );printf(n 5、充值 );printf(n&n);while(1) printf(n 请输入需要的操作的代号:n); switch(getch() case 1:add();break; case 2:buy();break; case 3:show();break; case 5:chong();break; case 4:exit(0);break; default:printf(n无此代号,请确认后重新输入);


    注意事项

    本文(食堂就餐餐费管理系统2.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开