C++淘宝管理系统及课程设计Word文件下载.docx

上传人:b****4 文档编号:6573524 上传时间:2023-05-07 格式:DOCX 页数:14 大小:31.56KB
下载 相关 举报
C++淘宝管理系统及课程设计Word文件下载.docx_第1页
第1页 / 共14页
C++淘宝管理系统及课程设计Word文件下载.docx_第2页
第2页 / 共14页
C++淘宝管理系统及课程设计Word文件下载.docx_第3页
第3页 / 共14页
C++淘宝管理系统及课程设计Word文件下载.docx_第4页
第4页 / 共14页
C++淘宝管理系统及课程设计Word文件下载.docx_第5页
第5页 / 共14页
C++淘宝管理系统及课程设计Word文件下载.docx_第6页
第6页 / 共14页
C++淘宝管理系统及课程设计Word文件下载.docx_第7页
第7页 / 共14页
C++淘宝管理系统及课程设计Word文件下载.docx_第8页
第8页 / 共14页
C++淘宝管理系统及课程设计Word文件下载.docx_第9页
第9页 / 共14页
C++淘宝管理系统及课程设计Word文件下载.docx_第10页
第10页 / 共14页
C++淘宝管理系统及课程设计Word文件下载.docx_第11页
第11页 / 共14页
C++淘宝管理系统及课程设计Word文件下载.docx_第12页
第12页 / 共14页
C++淘宝管理系统及课程设计Word文件下载.docx_第13页
第13页 / 共14页
C++淘宝管理系统及课程设计Word文件下载.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

C++淘宝管理系统及课程设计Word文件下载.docx

《C++淘宝管理系统及课程设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《C++淘宝管理系统及课程设计Word文件下载.docx(14页珍藏版)》请在冰点文库上搜索。

C++淘宝管理系统及课程设计Word文件下载.docx

修改订单信息:

从键盘上读取要修改的数据类型,基本信息都可以进行修改,修改以后交易信息的数目会自动进行统计,这主要采用的是静态成员函数实现的。

删除订单信息:

可以对订单信息进行修改,然后在文件夹里面进行空格删除的方式,使需要删除的信息进行消失处理。

推出我的淘宝信息:

结束程序。

二、设计分析

1.首先做的这个系统是没有自带文件夹的,但系统进行运行以后,都会产生相应的文件夹,文件夹里面会存储每次操作以后的数据,数据主要是宝贝编号,购买者姓名,发货时间,收获地址,预订性情等五项基本信息,这五项基本信息都存储在文件的同一行,这样可以存储多行数据信息。

2.定义每条信息的为:

classYage

{

public:

voidgetdetail();

//获取信息

voidprint();

//输出单个订单信息

voiddisplay();

//显示初始化化信息

char*getnumber();

//获取作为号使用指针

voidsetorder();

//修改订单信息

voidsetdelete();

//删除订单信息

staticvoidstatistics();

private:

charnumber[20];

//宝贝编号

charname[40];

//购买者姓名

chartime[20];

//发货时间

charaddress[40];

//收货地点

charstatue;

//预定详情

staticintsum;

};

3.每个公有成员函数都在类的定义中有所提及,并在后面都有备注,每行代码几乎都有备注,这样有利于函数的可读性操作。

具体设计

1.我要淘宝信息用getdetail()的设计

获取信息的方式是逐步提示下操作的,这样有利于操作的方便性,逐步是在"

请输入您要预定的宝贝编号:

"

"

请输入您的姓名:

;

请输入您要发货时间:

请输入收货地点:

您确定要预定吗?

(f/t):

这五个单独信息构成的,最后一步才是是否要订购,这样不会造成纠纷,使购买者赶到迷惑的设计要求。

2.输出购买信息是用print()设计

首先调用函数display();

显示出"

宝贝编号"

购买者姓名"

发货时间"

收获地点"

预定详情"

这五个基本的购物信息,然后使用指针

分别找出已经在文件夹里面的信息,然后逐一输出,再每组数据输出完以后,再调用静态成员函数统计函数,对本次次操作的交易数目进行动态全局的输出,这样使得函数的使用记录的是每次操作的准确数据。

3.想修宝贝信息是调用setorder()函数,即重新已经存储的数据进行动态修改。

首先使用采用动态数据查找到所需修改数据的宝贝编号,然后询问用户是不是要确定修改订单信息,如果用户确定要修改订单信息,则使用“请选择要修改的内容:

如果想修改宝贝编号,请按1"

如果想修购买者姓名,请按2"

如果想修改发货时间,请按3"

如果想修改收获地点,请按4"

如果想修改预定详情,请按5"

选定需要修改的信息,并按数字键来确定,然后再输入需要修改的内容,最后在返回函数,现在函数采用二进制编码进行读写,让后关闭文件,这样就就可以实现文件信息的查找,修改,与存储了。

4.使用setdelete()函数进行数据删除操作.

这个函数的使用非常简单,只是将其他的数据替换掉不能显示的数据,在屏幕中是不能显示的。

这个函数和setorder()函数的内容调用差不多,在这里我就不重复的说了。

5.就是退出系统,使用exit(0);

就可以实现退出系统的功能了。

C++面向对象程序设计课程设计小结

这个课程设计的主题都是自己逐步调试功能并运行出来的,开始想到这个系统时是借用了老师的飞机售票系统,然后有联想到淘宝的购物,最后决定写一个淘宝的购物系统。

在最开始的时候就要整体的布局,系统有那几个功能,需要那些函数的使用。

我初步确定的是五个操作大体,每个购物信息包含五个子信息。

五个主体操作是"

1.)我要淘宝信息"

、"

2.)输出购买信息"

3.)修改订单信息"

4.)删除订单信息"

5.)退出雅阁淘宝"

首先我想到的是对数据的输出操作,感觉这个应该会比较简单,然后在做的时候发现了很多问题,字符串的读取开始准备用string实现的,但用的时候发现了很多问题,最后没办法,只有选择用字符串数组来实现数据的处理。

在前面的主题布局完场以后,现在开始实现每一个比较小的共能模板块,我要淘宝信息这个板块比较简单,很快就做好,输出信息这个模板块是使用指针实现的,在后面基本上是把飞机售票系统的一些类容拿来借鉴使用的,定位,查找,这些都比较难,然后都是借鉴的,在修改信息的时候就用到了定位,查找功能的函数,这个只是对内容的修改,这个最后完成的还是比较快的。

主要是灾后一个删除信息的,因为我在开始用的是指针定位,与查找,但在用到删除信息的时候,就不知道该怎么用了。

然后又把原来的师生管理系统拿来看,因为里面有删除师生,看时候发现里面是用数组进行存储,然后再删除的时候,数组下标实现前移,这样就掩盖了要删除的信息,这样的方法让我没办法,我最后准备将所有的数据进行数组存储的时候,发现了很多不能修改的问题,没办法,就在网上找资料,看有什么好的办法是删除文件夹的数据的,最后还是没找到,最后,在实在没办法的时候,就想到了替换,将那些要删除的信息。

这就是这个课程设计最大的缺憾,因为时间用了很长,十多个小时就为了这个系统的设计。

不过最后的整体功能还是实现了,基本的要求也达到了。

实施方案包括:

1.项目描述(描述项目的主要内容)

2.交互效果(键盘输入前的提示,及输入后的效果等,可以用截图)

3.功能说明(每个功能区的作用)

二、设计分析(标题是什么设计就写什么设计,内容是主要设计部分的说明,特别要分析数据的存储。

三、具体设计(能写多少就多少,可直接附上VC项目文件(夹))

成绩确定

基本分60分(各项约10分):

能进行文件的输入和输出,有一定的功能,对数据能查询、添加、删除、更改,有必须的文档资料。

项目必须可以运行(不可运行的项目总分0分)。

知识运用分:

类、对象、构造函数、string类、继承派生、多态性、运算符重载、模板、异常处理等各加5分。

设计分满分10分:

有实际意义,有良好的交互性。

其它10分:

学习积极性、上课表现、文档资料的写作情况等。

源代码

#include<

iostream>

fstream>

string>

#include"

iomanip"

stdlib.h>

usingnamespacestd;

intYage:

:

sum=0;

voidYage:

statistics()

cout<

<

本次操作需要交易数目:

sum<

endl;

}

getdetail()//接受预定信息

{

cout<

cin.ignore();

cin.getline(number,20,'

\n'

);

cin.getline(name,40,'

cin.getline(time,20,'

cin.getline(address,40,'

cin>

>

statue;

if(statue=='

t'

)sum++;

display()//显示初始化化信息

\t"

print()//输出预定信息

number<

\t\t"

name<

time<

address<

statue<

char*Yage:

getnumber()//获取作为号使用指针

returnnumber;

setorder()//取消订单信息

charc;

intn;

charxinxi[20];

chart;

你想修改订单信息吗?

(y/n)"

c;

if(c=='

y'

||c=='

Y'

{

请选择要修改的内容:

n;

请输入修改后的类容:

if(n==1){cin>

xinxi;

strcpy(number,xinxi);

if(n==2){cin>

strcpy(name,xinxi);

if(n==3){cin>

strcpy(time,xinxi);

if(n==4){cin>

strcpy(address,xinxi);

if(n==5){cin>

t;

if(statue=='

f'

&

t=='

){sum++;

){sum--;

}statue=t;

}

setdelete()

charxinxi[20]={'

\t'

你想删除订单信息吗?

strcpy(number,xinxi);

strcpy(name,xinxi);

strcpy(time,xinxi);

strcpy(address,xinxi);

statue='

'

sum--;

voidmain()

intchoice;

while(true)

{Yagebaobei;

cout<

*****请让输入真确的操作:

*****"

********雅阁淘宝欢迎您********"

------------------------------"

2.)输出购买信息"

请选择:

cin>

choice;

switch(choice)

{

case1:

{

//定义对象

ofstreamout("

cilent.dat"

ios:

app);

//以输入方式打开,写入的数据添加到文件的尾部

baobei.getdetail();

//调用获取详细信息的函数

out.write((char*)&

baobei,sizeof(baobei));

//用二进制的方式写入文本文件

out.close();

//关闭文件夹

break;

}

case2:

ifstreamin("

//读取信息

baobei.display();

//调用显示初始化化信息函数

while(in.read((char*)&

baobei,sizeof(baobei)))//采用循环二进制读取数据,将每组储存的数据都进行读取

{

baobei.print();

//输出宝贝预定信息

}

Yage:

statistics();

in.close();

case3:

charnumber1[20];

cout<

cin>

number1;

cin.ignore();

fstreamfs("

in|ios:

out);

//输入输出都包含的函数,进行数据的修改

while(fs.read((char*)&

intp=fs.tellg();

//返回输入文件读指针的当前位置

if(strcmp(number1,baobei.getnumber())==0)//输入的宝贝编号与文件中的编号相同

{

fs.seekg(p-sizeof(baobei),ios:

beg);

//表示输入流开始的位置

baobei.setorder();

//调用取消订单信息

fs.write((char*)&

//将修改了以后的信息写入文本文件中

fs.close();

//关闭文本文件

break;

}

case4:

baobei.setdelete();

case5:

exit(0);

//退出系统

}

system("

pause"

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

当前位置:首页 > 解决方案 > 学习计划

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

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