1、网上购书系统C+一、需求分析随着互联网的不断发展,先如今网购逐渐的成为了一中很时尚的购物方式,它的好处有很多,在我看来主要是因为,它大大地节省了人们购物的时间,而且比较的方便快捷,与此同时它又给人们带来了更大的选择的空间。因此网购被人们所青睐便成为了一种理所当然的事情。于是与此相关的购物系统便应运而生,这便是我们这网上购书系统的社会需求。而且,从经济利益上而言,它也是一种性价比比较高的。应为它主要是以C+为基础而开发的,相对而言研发成本比较低。所以在经济上是可行的。 同时,有了在一系统的扶持之后,能够大大的提高我们的工作效率。所以综上而言,该系统的开发是很可行的。二、系统的主要功能实现功能:网
2、站后台:1、管理员登录 2、网站图书信息管理 3、网站注册会员信息管理。网站图书信息管理:1、增加图书信息 2、修改图书信息 3 、删除图书信息 4 、打印图书信息网站注册会员信息管理:1 、增加会员信息 2 、修改会员信息 3 、删除会员信息 4 、打印会员信息网站前台:用户网上购书1 、网上选书 2 、用户登录 3 、完善客户信息 4 、确认订单 5 、提交订单三、流程图4、数据结构设计这个系统用的数据类型有整型,字符型。这个系统包括的功能模块有:网站后台管理主要包括两个模 块:1、网站图书信息管理;2、网站注册会员信息管理网站前台主要实现:用户网上选书、完善客户资料、确认订单、提交订单等
3、功能。homepage.cpp: 系统主界面pass.cpp:系统管理员登录界面backstage.cpp:后台管理主界面bsbook.cpp、bsbook.h:图书信息管理系统bspeople.cpp、bspeople.h:会员信息管理系统frontstage.cpp:网站前台购书主界面fsshopping.cpp、person.h:网上购书系统wait.cpp:虚拟网站管理员登录等待状态quit.cpp:系统退出5、类设计 定义book类,采用switch case 语句、do while语句、链表、文件流操作及调用函数backstage()实现其功能。book类成员:Booknumber
4、、Bookname、BookID、Bookauther、Bookpublisher、Bookprice 定义people类,采用switch case 语句、do while语句、链表、文件流操作及调用函数backstage()实现其功能。 people类成员:Peoplenumber、Peoplename、Password、grade 定义person类、Tbook类、Tpeople类,采用switch case 语句、do while 语句及调用wait()、quit()函数来实现其功能。 buyer类成员:name、buyerID、address、phonenumber、postnode
5、 定义buyer为基类,另外定义layfolk类及member类分别继承基类buyer,基类中display()和setpay()采用抽象方法。 Tbook类成员:Booknumber、Bookname、BookID、Bookauther、Bookpublisher、Bookprice 定义Tbook类用来打开文件BookInformation.txt文件,读入网站图书信息并将客户所购图书写到其定义的一个链表中 Tpeople类成员:Peoplenumber、Peoplename、Password、grade 定义Tpeople类用来打开PeopleInformation.txt文件,读入会员
6、信息 知识点: 类、链表、文件流操作,switch case 语句、do while 语句、fflush(stdin)函数。6、主要算法设计模块一、homepage.cpp: 系统主界面 实现: 采用 switch case 语句、do while 语句及调用wait()、quit()、pass()、frontstage()函数实现其功能。 知识点: switch case 语句、do while 语句、system(cls)语句、system( color). system(colar 02);是表示黑背景绿色字 颜色属性由两个十六进制数字指定 - 第一个为背景,第二个则为前景。 每个数字可
7、以为以下任何值之一: 0 = 黑色 8 = 灰色 1 = 蓝色 9 = 淡蓝色 2 = 绿色 A = 淡绿色 3 = 湖蓝色 B = 淡浅绿色 4 = 红色 C = 淡红色 5 = 紫色 D = 淡紫色 6 = 黄色 E = 淡黄色 7 = 白色 F = 亮白色.模块二、pass.cpp:系统管理员登录界面登陆成功,进入网站后台操作,若三次输入姓名和密码不相匹配,系统将会自动退出!实现:for循环,字符串比较知识点:strcmp(string1,string2)模块三、backstage.cpp:后台管理主界面 实现: 采用switch case 、do while 语句及调用bsbook()
8、、bspeople()、wait()、quit()函数实现其功能。 知识点: switch case 语句、do while 语句。模块四、bsbook.cpp、bsbook.h:图书信息管理系统实现: 定义book类,采用switch case 语句、do while语句、链表、文件流操作及调用函数backstage()实现其功能。 book类成员:Booknumber、Bookname、BookID、Bookauther、Bookpublisher、Bookprice 增加图书信息调用insert()函数 修改图书信息调用revise()函数 删除图书信息调用del1()、del2()函数
9、 打印图书信息调用print()函数 图书信息保存调用save()函数 从文件BookInformation.txt中读取信息,并转化成链表调用change()函数 知识点: 类定义、链表、文件流、switch case语句、do while 语句、cerr、getch()函数1.cerr与cout的区别:cerr与cout的主要区分就是,cout输出的信息可以重定向,而cerr只能输出到标准输出(显示器)上。 例如下面程序编译后生成test.exe / test.cpp #include int main() cout hello world-cout endl ; cerr hello w
10、orld-cerr cout.txt 运行结果是: 在生成的cout.txt文件中输出了hello world-cout,同时在显示器上输出了helloworld-cerr 也就是说cout的输出可以重定向到一个文件中,而cerr必须输出在显示器上。2.conio.h头文件conio.h不是C标准库中的头文件。 conio是Console Input/Output(控制台输入输出)的简写,其中定义了通过控制台进行数据输入和数据输出的函数,主要是一些用户通过按键盘产生的对应操作, 比如getch()函数等等。 包含的函数 cgets(char *); cprintf(const char *,
11、.); cputs(const char *); cscanf(const char *, .); inp(unsigned short); inpw(unsigned short); getch(void); getche(void); kbhit(void); outp(unsigned short, int); outpw(unsigned short, unsigned short); putch(int); ungetch(int); void _Cdecl clreol (void); void _Cdecl clrscr (void); void _Cdecl delline (
12、void); 模块五、bspeople.cpp、bspeople.h:会员信息管理系统实现: 定义people类,采用switch case 语句、do while语句、链表、文件流操作及调用函数backstage()实现其功能。 people类成员:Peoplenumber、Peoplename、Password、grade 增加会员信息调用rinsert()函数 修改会员信息调用rrevise()函数 删除会员信息调用rdel1()、rdel2()函数 打印会员信息调用rprint()函数 会员信息保存调用rsave()函数 从文件PeopleInformation.txt中读取信息,并转
13、化成链表调用rchange()函数 知识点: 类定义、链表、文件流、switch case语句、do while 语句、cerr模块六、frontstage.cpp:网站前台购书主界面实现: 采用swith case 语句、do while 语句及调用wait()、quit()、fsshopping()、函数实现其功能。知识点: swith case 语句、do while 语句。模块七、fsshopping.cpp、person.h:网上购书系统实现: 定义person类、Tbook类、Tpeople类,采用switch case 语句、do while 语句及调用wait()、quit()
14、函数来实现其功能。 buyer类成员:name、buyerID、address、phonenumber、postnode 定义buyer为基类,另外定义layfolk类及member类分别继承基类buyer,基类中display()和setpay()采用抽象方法。 Tbook类成员:Booknumber、Bookname、BookID、Bookauther、Bookpublisher、Bookprice 定义Tbook类用来打开文件BookInformation.txt文件,读入网站图书信息并将客户所购图书写到其定义的一个链表中 Tpeople类成员:Peoplenumber、Peoplena
15、me、Password、grade 定义Tpeople类用来打开PeopleInformation.txt文件,读入会员信息 知识点: 类、链表、文件流操作,switch case 语句、do while 语句、fflush(stdin)函数。 fflush(stdin)函数 清除前面信息. 例如 gets(a); fflush(stdin); gets(b); 如果没有用fflush(stdin); 那么gets(b); 就会默认把上一次输入后的回车作为结果输给b;stdin就是标准输入std即standard(标准),in即输入,合起来就是标准输入。 一般就是指键盘输入到缓冲区里的东西。模
16、块八、wait.cpp:虚拟网站管理员登录等待状态知识点: 采用函数: sleep() 作用: 延时,程序暂停若干时间z。时间,就是他的参数,单位是毫秒。需调用windows.h 例如: Sleep (500) ; 就是到这里停半秒,然后继续向下执行。 b 表示退一格 b表示退一格 表示转义字符 而-、/、|即表示-、/、|块九、quit.cpp:系统退出当管理员或购书用户退出系统时将出现此界面7、主要代码 主要代码段: / test.cpp #include int main() cout hello world-cout endl ; cerr hello world-cerr endl
17、; return 0; cgets(char *); cprintf(const char *, .); cputs(const char *); cscanf(const char *, .); inp(unsigned short); inpw(unsigned short); getch(void); getche(void); kbhit(void); outp(unsigned short, int); outpw(unsigned short, unsigned short); putch(int); ungetch(int); void _Cdecl clreol (void);
18、 void _Cdecl clrscr (void); void _Cdecl delline (void); 八、系统运行结果样例网上购书系统主界面 管理员登陆成功界面三次输入姓名和密码有误系统登录失败界面 网站后台登陆成功主界面 网站图书信息管理主界面 增加图书界面网站图书修改主界面网站图书删除主界面按编号删除图书界面按书名删除图书界面打印所有图书信息界面 网站前台登录主界面会员消费说明界面购书流程说明网上购书开始选书界面继续购书界面网上选书流程结束确认购买书目界面购书人账号登录界面svip会员登录完善信息界面普通会员登录完善信息界面确认订单信息界面选择付款方式界面提交订单,购书成功退出网
19、上购书系统联系我们界面 九、结束语 C+高级语言程序设计是一门重要的专业基础课。此次课程设计的目的是以C+程序设计语言为基础,通过完成一些具有一定难度的课程设计题目的编写、调试、运行工作,使我进一步掌握面向过程和面向对象程序设计的基本方法和编程技巧,巩固所学理论知识,使理论与实际相结合。从而提高自我分析问题、解决问题的能力。培养独立的C+语言程序实际与算法设计方法,具备初步的独立分析和设计能力。软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能。能够综合运用所学的理论知识和方法进行独立分析和解决问题的能力。 在这次大作业中我又一次的体会到什么是“书到用时方恨少”和“看起来容易做起来难了”。因此在以后的学习中,我一定会好好地学习每一门功课,并且努力认真的去实践。争取作个行动的“巨人”。 最后感谢我的老师给我们来了那么多的新鲜的知识,让我们接触到了另外的一种计算机语言。俗话说:师傅领进门修行在个人。老师你算是把我们领进来了,接下来的就看我们自己的了。我们一定会好好的努力不会让您失望的。指导教师评语:成绩: 签名:
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1