C语言课程设计”模拟POS“任务书(共15页)_第1页
C语言课程设计”模拟POS“任务书(共15页)_第2页
C语言课程设计”模拟POS“任务书(共15页)_第3页
C语言课程设计”模拟POS“任务书(共15页)_第4页
C语言课程设计”模拟POS“任务书(共15页)_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上 序号: 学号: 课 程 设 计设计课程名称: 题 目: 学 生 姓 名: 学 院(系): 专 业 班 级: 指 导 教 师: 专业技术职务: 设计时间: 年 月 日 年 月 日目录一、目的要求.1二、功能要求.2-3三、难点提示.4四、分析与设计.5五、代码.6-9六、结果与测试.10七、心得体会.11 模拟POS"任务书一、目的要求 本课程设计任务的目的是要求学生按照分析、设计、编码、调试和测试的软件开发过程独立完成一个模拟单片机上运行的POS系统,并能最终实现本系统的功能要求。二、功能要求【题目描述】在单片机应用中,往往需要向LED阵列(一种发光二极管

2、,多个排成二维显示屏幕)输出字符。这种字符是通过点阵一个点一个点描出来的。用0表示暗点,用1表示亮点。通常使用7×8大小的点阵来描绘ASC字符,右图使用*输出一个7×8的王字。某自选商店需要定购一种POS终端,这个终端使用LED向顾客显示应付金额,已收金额和找零金额。顾客购买商品后,由收银员统计应付金额,并通过你的程序向顾客显示应付款。顾客给足付款后,收银员计算出找零并同时通过你的程序显示已收金额和找零金额。当然顾客也可能因为最后应付金额过大而取消购买,这样就在屏幕上显示CANCEL字样。由于商店规模不是很大,假定顾客购买的所有商品均在999元以内。因此实际一次显示金额最宽

3、不超过7个字符(¥XXX.XX)。你的程序需要实现以下功能:1 POS开机:第一次使用POS机,需要事先清除当日已收款2 统计应付金额:收银员输入应付金额,在屏幕上用7×8点阵显示应付金额3 收款找零:收银员输入顾客付款,在屏幕上分两行显示已收款和找零款4 取消付款:收银员取消本次购买。5 日结算:收银员统计当日销售额。【题目要求】1. 商场老板希望能够提高效率,提高效率的最好办法是减少收银员操作错误。如果进入用户应付款统计阶段,就只能选择收款或者取消,而不能重复统计应付款,换句话说,上述功能的3,4选项不能出现在初始菜单中,而应该在功能2中出现。而功能2进入后,要么选择收款找零,要

4、么选择取消付款,不能进入日结算界面。2. 你的程序要求以大字体点阵方式显示在屏幕上,注意到并不是每次都是显示7个字符的只有在某些情况下才出现最多7个字符【程序要求】(1) 程序正确。能够严格实现任务书中描述的功能;(2) 界面友好。尽可能使界面友好、直观、易操作;(3) 风格友好。源程序应有良好的编码风格,使程序容易阅读。【输入/输出要求】 (1)应用程序运行后,先显示一个菜单,然后用户根据需要选择相应的操作项目。进入每个操作后,根据程序的提示输入相应的信息; (2)要求用户输入数据时,要给出清晰、明确的提示信息,包括输入的数据内容、格式及结束方式等。【课程设计报告内容要求】(1) 封面:统一

5、采用常州大学课程设计说明书封面(2) 内容提要(3) 目录(4) “课程设计报告”正文格式1) 概述所作系统的主要功能;2) 分析和描述任务书的基本要求与内容;3) 描述及绘制出系统的功能结构框图;4) C语言程序代码;5) 使用说明;6) 设计日志以及心得体会三、难点提示1. 首先需要在方格纸上描出09个数字,以及小数点,和钱币符号,以及CANEL5个字母,描出他们的0,1点阵,存贮在一个15×7×8的数组中(15个字符,每个字符为7×8然后需要把应付款,已收款和找零款由浮点数转换为长度不超过7的字符串,然后调用字符串显示子程序。在屏幕上显示一个字符容易,但是要

6、并排显示多个字符有点难度,由于有多个地方要使用大字体显示,因此比较好的方法是把大字体显示单独做成一个子程序。 2. 菜单部分样例代码可参阅网络课堂里相关帮助顶层菜单设计框架。四、分析与设计开机清零选择操作14输入应付款选择操作收款找零取消付款按任意键回主菜单主菜单日结算退出系统选4选2选3选1按任意键五、代码#include<stdio.h>#include<stdlib.h>void clear();float check();void print(float);void print_n();void sum(float);float k=0;void main()c

7、har c;dosystem("CLS");printf("*n");printf(" *主菜单* nn");printf(" 1.清除前一天数据 nn");printf(" 2.账目运算 nn");printf(" 3.日结算 nn");printf(" 4.退出系统 n");printf("*n");printf("请选择输入的选项:1234:");doc=getchar();while(c!='1

8、9;&&c!='2'&&c!='3'&&c!='4');getchar();switch(c) case'1':clear();break;case'2':check();break;case'3':sum(k);break;case'4':exit(0);break;printf("按任意键继续:n");getchar();system("CLS");while(1);void clear()k

9、=0;FILE *fp;system("CLS");fp=fopen("E:shuju.txt","w");fclose(fp);printf("清除完毕!n");float check()FILE *fp;float a,b,left;char c;system("CLS");printf("输入购物金额:");scanf("%f",&a);print(a);printf("1.确认购物;2.取消购物nn");printf(&

10、quot;请输入1或2进行操作:");doc=getchar();while(c!='1'&&c!='2');getchar();system("CLS");if(c='1')printf("输入顾客付款总额:n");scanf("%f",&b);getchar();left=b-a;printf("付款总额:%-.2fn",b);print(b);printf("应找零:%-.2fn",left);print(l

11、eft);k=k+a;fp=fopen("E:shuju.txt","a");fprintf(fp,"%.2fn",a);fclose(fp);if(c='2')print_n();return(k);system("CLS");void sum(float d)FILE *fp;system("CLS");printf("今日的销售总额是:%-.2fn",d);print(d);fp=fopen("E:shuju.txt","a

12、");fprintf(fp,"%.2fn",d);fclose(fp);void print(float n)char a1578;int i,j,k,p7;long m;for(i=0;i<15;i+)for(j=0;j<7;j+)for(k=0;k<8;k+)aijk='0'for(i=1;i<7;i+)a01i='*'a05i='*'for(i=1;i<6;i+)a0i1='*'a0i6='*'for(i=1;i<6;i+)a1i6='

13、*'for(i=1;i<7;i+)a21i='*'a23i='*'a25i='*'a226='*'a241='*' for(i=1;i<7;i+)a31i='*'a33i='*'a35i='*'a326='*'a346='*'for(i=1;i<7;i+)a43i='*'for(j=1;j<4;j+)a4j1='*'for(j=1;j<6;j+)a4j6='*

14、'for(i=1;i<7;i+)a51i='*'a53i='*'a55i='*'a521='*'a546='*'for(i=1;i<7;i+)a61i='*'a63i='*'a65i='*'a621='*'a646='*'a641='*'for(i=1;i<6;i+)a7i6='*'for(i=1;i<6;i+)a71i='*'for(i=1;i<7;

15、i+)a81i='*'a83i='*'a85i='*' a821='*'a826='*'a846='*'a841='*' for(i=1;i<7;i+)a91i='*'a93i='*'a95i='*'a921='*'a926='*'a946='*'for(k=5;k<7;k+)a104k='*'a105k='*'for(k=1;k<7;k+

16、)a113k='*'a114k='*'for(j=2;j<7;j+)a11j3='*'a11j4='*'a1101='*'a1106='*'a1112='*'a1115='*' for(i=0;i<7;i+)for(j=0;j<8;j+)a12ij='0'm=(long)(100*n+0.1);p6=m%10;p5=m/10%10;p4=10;p3=m/100%10;p2=m/1000%10;p1=m/10000%10;p0=11;i

17、f(p1=0)p1=12;if(p2=0) p2=12;for(i=0;i<7;i+)for(j=0;j<7;j+)for(k=0;k<8;k+)printf("%c",apjik);printf("n");elsefor(i=0;i<7;i+)for(j=0;j<7;j+)for(k=0;k<8;k+)printf("%c",apjik);printf("n");elsefor(i=0;i<7;i+)for(j=0;j<7;j+)for(k=0;k<8;k+)

18、printf("%c",apjik);printf("n");void print_n()char a678;int i,j,k;for(i=0;i<6;i+)for(j=0;j<7;j+)for(k=0;k<8;k+)aijk='0'for(i=2;i<6;i+)a01i='*'a05i='*'for(i=2;i<5;i+)a0i1='*'for(i=1;i<7;i+)a13i='*'a113='*'a114='*'a122='*'a125='*'a141='*'a146='*'a151='*'a156='*'for(i=1;i<6;i+)a2i1='*'a2i6='*'a222='*'a233='*'a244='*'a255='*'for(i=2;i<

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论