c语言课程设计报告商品销售统计程序.docx

上传人:b****5 文档编号:6295473 上传时间:2023-01-05 格式:DOCX 页数:12 大小:161.94KB
下载 相关 举报
c语言课程设计报告商品销售统计程序.docx_第1页
第1页 / 共12页
c语言课程设计报告商品销售统计程序.docx_第2页
第2页 / 共12页
c语言课程设计报告商品销售统计程序.docx_第3页
第3页 / 共12页
c语言课程设计报告商品销售统计程序.docx_第4页
第4页 / 共12页
c语言课程设计报告商品销售统计程序.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

c语言课程设计报告商品销售统计程序.docx

《c语言课程设计报告商品销售统计程序.docx》由会员分享,可在线阅读,更多相关《c语言课程设计报告商品销售统计程序.docx(12页珍藏版)》请在冰豆网上搜索。

c语言课程设计报告商品销售统计程序.docx

c语言课程设计报告商品销售统计程序

信息科学与技术学院

程序设计基础课程设计报告

 

题目名称:

商品销售统计

学生姓名:

学号:

专业班级:

电子信息工程14级1班

指导教师:

2015年1月7日

1课程设计题目与要求

1.1设计题目

商品销售统计程序。

1.2设计要求

商品销售统计

问题描述

编写商品销售统计程序,商品的信息有:

商品的名称,计量单位(重量或件),单价。

所有商品的信息事先已存入计算机,屏幕上显示所有商品的名称,选择商品名,输入商品计量单位(如重量,件数等),根据单价算出总价。

客户一次购物可能购买多种商品,程序应计算出客户应付的钱款数。

基本要求

程序分为两个部分:

第一部分用于输入商品的信息并允许修改和删除;第二部分实现销售统计。

程序运行时由用户选择进入哪一部分功能,并能在运行时在两部分之间切换。

第二部分运行时,首先显示所有商品名称及代码(商品数目较多时,应考虑分屏显示),用户输入商品代码及商品重量或件数,用户一次操作可输入若干商品的购买信息,然后输入一个特殊的代码(如-1)表示本次购物结束。

此时,程序计算出应付钱款数并显示。

测试数据

程序应输入不少于10种商品的信息,并进行模拟运行。

实现提示

本程序的商品信息可用一个结构体数组或链表进行管理。

至少要有文本菜单实现。

2总体设计

2.1总体功能框架如图1-1

程序设计方法

根据系统功能要求,可以将问题解决分为以下步骤:

(1)分析系统中的各个实体之间的关系及其属性和行为;

(2)根据问题描述,设计系统的类层次;

(3)完成类层次中各个类的描述(包括属性和方法);

(4)完成类中各个成员函数的定义;

(5)完成系统的应用模块;

(6)功能调试;

(7)完成系统总结报告以及系统使用说明书。

 

3详细设计

3.1主界面流程图如图3.1

设计超市管理系统的主界面,主界面相应的现实有下列菜单:

增加商品、修改商品、查询商品、统计商品、显示商品、退出。

 

3.1主界面流程图

3.1系统功能详细设计

(1)函数原型

Voidnewthing(strutthingthings[]);//增加商品信息

(2)函数功能

求所增加商品信息

(3)函数形参说明

thingthings[]:

输入新增加商品信息

(1)函数原型

Voidupdatscore(structthingthings[],intnum);//求所增加商品信息

(2)函数功能

求所修改商品信息

(3)函数形参说明

thingthings[]:

输入的数据数组所要修改的商品信息

num:

数组中数据个数

(1)函数原型

Voidsearchthing(structthingthings[],intnum);//求所修改商品信息

(2)函数功能

所要查询商品的信息

(3)函数形参说明

thingthings[]:

输入的数据数组所要的查询商品的信息

num:

数组中数据个数

(1)函数原型

Voieoutputthing(strutthingthings[]);//所要查询商品的信息

(3)函数形参说明

thingthings[]:

输入的数据数组所要显示商品信息

 

3.2增加商品信息

voidnew_thing(structthingthings[])

{

structthings;

if(count==100){

printf("商品已满!

\n");

return;

}

s.num=count;

printf("输入商品名称:

");

scanf("%s",s.name);

printf("输入商品价格:

");

scanf("%lf",&s.EP);

things[count]=s;

count++;

}

 

3.5修改商品信息的过程

voidupdat_score(structthingthings[],intnum)

{printf("请输入新的商品名称");

scanf("%s",&things[num].name);

printf("请输入新的商品价格");

scanf("%lf",&things[num].EP);

printf("修改成功!

");}

 

3.6查询商品的过程:

voidsearch_thing(structthingthings[],intnum)

{

inti,flag=0;

if(count==0){

printf("还没有录入商品哦~\n");

return;}

if(num>=0&&num<=count)

printf("num:

%d\n名字:

%s\n价格:

%f",things[num].num,things[num].name,things[num].EP);

else

printf("未找到该商品");

}

 

3.8显示商品过程

voidoutput_thing(structthingthings[])

{

inti;

if(count==0){printf("还没有录入商品哦~\n");return;}

printf("num\tname\tEP\t\n");

for(i=0;i

printf("%d\t",things[i].num);

printf("%s\t",things[i].name);

printf("%f\t\n",things[i].EP);}}

 

4运行结果

4.1运行结果截图

由图可知,1:

是输入新的商品,2:

是查找商品,3是输出商品,4是修改商品,0是退出:

这个是软件进入界面的过程。

 

由上图可知这个是商品添加的过程(

 

5总结

(一).通过这次实践,我们成功的实现了数据的输入与保存,并在程序中实现了使用类对各个学生的各参数的基本操作。

该系统的难点在于不使用任何数据库,只使用磁盘文件来实现对每个学生的信息的存储和读取。

虽然测试的学生的信息条数不够多,但是题目的要求是完全能够达到的,在现有的基础上只要稍加修改就能够满足批量数据的存储和查阅。

要想增加更多学生信息,只要增加相应的对象的属性即可,前提是在拥有相似的属性的时候。

若有不同的属性,可以增加相应的类就可满足需求。

其中重要的是打开文件,保存文件,也就是对数据的妥善的存储和再次的调用的操作。

本次的课程设计对我们也是一个很好的实践的机会,锻炼了自己,提高了自己编程的能力,为今后的项目打好基础。

(二)编程中的问题及解决方法

(1)录入数据难以保存,通过参考一系列的指导书得以解决。

(2)对于预处理函数的概念不清楚,在同学的讲解下,自己才能得以明白。

(3)对于切换界面的方法不是特别理解,通过参考大量的资料,找到了解决方法。

(三)心得体会

a)对于程序设计有了新的认识,一个好的程序员必须要对程序整体有足够的认识,才能够写出一个完美的程序。

要想对每一个代码熟悉,只有不停的实验和不停的变形不同的程序来检验它

b)的作用,正如“实验室检验真理的唯一标准”。

同样的对于编程也是如此。

c)熟悉程序是怎样运行的,每一个函数调用的目的、每一个函数的作用和功能。

具体是怎样执行的,这些问题都必须弄得透彻。

 

参考文献

[1]《C++面向对象程序设计》(第一版)谭浩强北京:

清华大学出版社2006年1月

[2]《C程序设计》(第三版)谭浩强北京:

清华大学出版社2005年7月

[3]c语言的《实战宝典》

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1