我的编程空间,编程开发者的网络收藏夹
学习永远不晚

C++实现团购订单管理系统

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

C++实现团购订单管理系统

项目需求

功能说明

要求编写一个团购订单信息管理系统。

系统包含对订单的添加、查询、修改、删除和浏览等功能。

系统设有口令,只有正确输入口令才能使用该信息管理系统

功能具体说明

菜单的设计:共设置6个选项,包括订单的添加、查询、修改、删除、浏览和退出。退出系统前菜单是重复循环的。

订单信息的设计:本案例采用简化形式,只定义了订单编号、商品编号、商品单价、商品数量、收件人姓名等。

添加订单:添加时订单的详细信息从键盘输入相应内容。

浏览订单:显示当前订单的所有信息,要求有格式控制。

查询订单:可输入订单编号或收件人姓名查询相应订单。

修改订单:对特定订单信息进行修改并保存。

删除订单:可根据订单编号对该订单进行删除操作。

口令设置:被设为一个字符串常量。程序开始运行时,要求通过键盘输入口令。3次输入不正确,直接结束程序。

代码实现

对于订单设计的类

class Order

{

public:

       //构造函数

       Order(string oid = "", string sid = "", double sp = 0, int sc = 0, string n 
= "")

       {

              order_num = oid;

              goods_num = sid;

              goods_price = sp;

              goods_count = sc;

              name = n;

       }



       //打印基本信息

       void print()

       {

              cout << "订单编号:" << setw(N) << order_num << " 商品编号:" << 
setw(N) << goods_num << " 商品价格:"

                     << setw(N) << goods_price << " 商品数量:" << setw(N) << 
goods_count << " 收件人姓名:" << setw(N) << name << endl;

       }



       //获得订单编号

       string getOid()

       {

              return order_num;

       }



       //获得姓名

       string getName()

       {

              return name;

       }



private:

       string order_num;    //订单编号

       string goods_num;          //商品编号

       double goods_price;  //商品价格

       int goods_count;           //商品数量

       string name;         //收件人姓名

};

系统中各个功能的实现

对于系统中的添加,浏览,查询,修改,删除五项功能分别定义了函数来实现。

其中的orders是用来保存订单信息的数组,index是记录当前数组位置

void add(Order orders[], int& index)

{

       if (index == MAX)

       {

              cout << "订单已满" << endl;

              return;

       }



       string oid;

       string sid;

       double sp;

       int sc;

       string n;

       cout << "请输入订单编号:";

       cin >> oid;

       cout << "请输入商品编号:";

       cin >> sid;

       cout << "请输入商品价格:";

       cin >> sp;

       cout << "请输入商品数量:";

       cin >> sc;

       cout << "请输入收件人姓名:";

       cin >> n;

       Order o(oid, sid, sp, sc, n);

       orders[index++] = o;

       cout << "添加成功" << endl;

}



void visit(Order orders[], int& index)

{

       cout << "目前共有" << index << "个订单" << endl;

       for (int i = 0; i < index; i++)

       {

              orders[i].print();

       }

}



void find(Order orders[], int& index)

{

       if (index == 0)

       {

              cout << "订单为空" << endl;

       }



       int chiose;

       cout << "请选择查询方式  1、订单编号  2、收件人姓名" << endl;

       cin >> chiose;

       if (chiose == 1)

       {

              string oid;

              cout << "请输入要查询的订单编号" << endl;

              cin >> oid;

              for (int i = 0; i < index; i++)

              {

                     if (orders[i].getOid() == oid)

                     {

                           orders[i].print();

                     }

              }

       }

       else if (chiose == 2)

       {

              string name;

              cout << "请输入要查询的收件人姓名" << endl;

              cin >> name;

              for (int i = 0; i < index; i++)

              {

                     if (orders[i].getName() == name)

                     {

                           orders[i].print();

                     }

              }

       }

       else

       {

              cout << "错误的选择" << endl;

       }

}



void fixed(Order orders[], int& index)

{

       if (index == 0)

       {

              cout << "订单为空" << endl;

       }



       string oid;

       cout << "请输入要修改的订单编号" << endl;

       cin >> oid;



       bool have = false;

       for (int i = 0; i < index; i++)

       {

              if (orders[i].getOid() == oid)

              {

                     have = true;



                     string oid;

                     string sid;

                     double sp;

                     int sc;

                     string n;

                     cout << "请输入订单编号:";

                     cin >> oid;

                     cout << "请输入商品编号:";

                     cin >> sid;

                     cout << "请输入商品价格:";

                     cin >> sp;

                     cout << "请输入商品数量:";

                     cin >> sc;

                     cout << "请输入收件人姓名:";

                     cin >> n;



                     Order o(oid, sid, sp, sc, n);

                     orders[i] = o;

              }

       }



       if (have == false)

       {

              cout << "没有该订单号的订单" << endl;

              return;

       }

       cout << "修改成功" << endl;

}



void deleteOrder(Order orders[], int& index)

{

       if (index == 0)

       {

              cout << "订单为空" << endl;

       }



       string oid;

       cout << "请输入要删除的订单编号" << endl;

       cin >> oid;



       bool have = false;

       int i;

       for (i = 0; i < index; i++)

       {

              if (orders[i].getOid() == oid)

              {

                     have = true;

                     break;

              }

       }



       if (have == false)

       {

              cout << "没有该订单号的订单" << endl;

              return;

       }

       else

       {

              for (int j = i; j < index - 1; j++)

              {

                     orders[j] = orders[j + 1];

              }

              index--;

       }



       cout << "删除成功" << endl;

}

完整代码

#include <iostream>

#include <iomanip>

#include <string>

using namespace std;

#define N 5

#define MAX 3 //最大订单数量



class Order

{

public:

       //构造函数

       Order(string oid = "", string sid = "", double sp = 0, int sc = 0, string n 
= "")

       {

              order_num = oid;

              goods_num = sid;

              goods_price = sp;

              goods_count = sc;

              name = n;

       }



       //打印基本信息

       void print()

       {

              cout << "订单编号:" << setw(N) << order_num << " 商品编号:" << 
setw(N) << goods_num << " 商品价格:"

                     << setw(N) << goods_price << " 商品数量:" << setw(N) << 
goods_count << " 收件人姓名:" << setw(N) << name << endl;

       }



       //获得订单编号

       string getOid()

       {

              return order_num;

       }



       //获得姓名

       string getName()

       {

              return name;

       }



private:

       string order_num;    //订单编号

       string goods_num;          //商品编号

       double goods_price;  //商品价格

       int goods_count;           //商品数量

       string name;         //收件人姓名

};



Order orders[MAX];

int index = 0;



void add(Order orders[], int& index)

{

       if (index == MAX)

       {

              cout << "订单已满" << endl;

              return;

       }



       string oid;

       string sid;

       double sp;

       int sc;

       string n;

       cout << "请输入订单编号:";

       cin >> oid;

       cout << "请输入商品编号:";

       cin >> sid;

       cout << "请输入商品价格:";

       cin >> sp;

       cout << "请输入商品数量:";

       cin >> sc;

       cout << "请输入收件人姓名:";

       cin >> n;

       Order o(oid, sid, sp, sc, n);

       orders[index++] = o;

       cout << "添加成功" << endl;

}



void visit(Order orders[], int& index)

{

       cout << "目前共有" << index << "个订单" << endl;

       for (int i = 0; i < index; i++)

       {

              orders[i].print();

       }

}



void find(Order orders[], int& index)

{

       if (index == 0)

       {

              cout << "订单为空" << endl;

       }



       int chiose;

       cout << "请选择查询方式  1、订单编号  2、收件人姓名" << endl;

       cin >> chiose;

       if (chiose == 1)

       {

              string oid;

              cout << "请输入要查询的订单编号" << endl;

              cin >> oid;

              for (int i = 0; i < index; i++)

              {

                     if (orders[i].getOid() == oid)

                     {

                           orders[i].print();

                     }

              }

       }

       else if (chiose == 2)

       {

              string name;

              cout << "请输入要查询的收件人姓名" << endl;

              cin >> name;

              for (int i = 0; i < index; i++)

              {

                     if (orders[i].getName() == name)

                     {

                           orders[i].print();

                     }

              }

       }

       else

       {

              cout << "错误的选择" << endl;

       }

}



void fixed(Order orders[], int& index)

{

       if (index == 0)

       {

              cout << "订单为空" << endl;

       }



       string oid;

       cout << "请输入要修改的订单编号" << endl;

       cin >> oid;



       bool have = false;

       for (int i = 0; i < index; i++)

       {

              if (orders[i].getOid() == oid)

              {

                     have = true;



                     string oid;

                     string sid;

                     double sp;

                     int sc;

                     string n;

                     cout << "请输入订单编号:";

                     cin >> oid;

                     cout << "请输入商品编号:";

                     cin >> sid;

                     cout << "请输入商品价格:";

                     cin >> sp;

                     cout << "请输入商品数量:";

                     cin >> sc;

                     cout << "请输入收件人姓名:";

                     cin >> n;



                     Order o(oid, sid, sp, sc, n);

                     orders[i] = o;

              }

       }



       if (have == false)

       {

              cout << "没有该订单号的订单" << endl;

              return;

       }

       cout << "修改成功" << endl;

}



void deleteOrder(Order orders[], int& index)

{

       if (index == 0)

       {

              cout << "订单为空" << endl;

       }



       string oid;

       cout << "请输入要删除的订单编号" << endl;

       cin >> oid;



       bool have = false;

       int i;

       for (i = 0; i < index; i++)

       {

              if (orders[i].getOid() == oid)

              {

                     have = true;

                     break;

              }

       }



       if (have == false)

       {

              cout << "没有该订单号的订单" << endl;

              return;

       }

       else

       {

              for (int j = i; j < index - 1; j++)

              {

                     orders[j] = orders[j + 1];

              }

              index--;

       }



       cout << "删除成功" << endl;

}



int main(void)

{

       int n = 0;           //记录口令输入次数

       string password;                  //输入的密码

       cout << "请输入登录口令(默认abcd)" << endl;

       while (1)

       {

              cin >> password;

              if (password == "abcd")

              {

                     cout << "输入口令正确!" << endl;

                     break;

              }

              else

              {

                     cout << "输入口令正确,请重新输入!" << endl;

                     n++;

                     if (n == 3)

                     {

                           cout << "已输入三次,您无权进行操作!" << endl;

                           return 0;

                     }

              }

       }

       cout << endl;



       while (1)

       {

              system("cls");

              cout << "*******************************************" << endl;

              cout << "*     根据所做操作选择一下数字序号        *" << endl;

              cout << "*     1.添加订单        2.浏览订单        *" << endl;

              cout << "*     3.查询订单        4.修改订单        *" << endl;

              cout << "*     5.删除订单        6.退出系统        *" << endl;

              cout << "*******************************************" << endl;

              int n;

              cin >> n;

              switch (n)

              {

              case 1:

                     add(orders, index);

                     system("pause");

                     break;

              case 2:

                     visit(orders, index);

                     system("pause");

                     break;

              case 3:

                     find(orders, index);

                     system("pause");

                     break;

              case 4:

                     fixed(orders, index);

                     system("pause");

                     break;

              case 5:

                     deleteOrder(orders, index);

                     system("pause");

                     break;

              case 6:

                     return 0;

                     break;

              default:

                     break;

              }

       }



       return 0;

}

结语

该系统比较简单,对数据的存储使用了数组,也可以使用顺序表,链表等数据结构,代码中也有很多值得优化的地方。

以上就是C++实现团购订单管理系统的详细内容,更多关于C++订单管理系统的资料请关注编程网其它相关文章!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

C++实现团购订单管理系统

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

C++实现团购订单管理系统

这篇文章主要为大家详细介绍了如何利用C++实现团购订单管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
2022-12-30

MySQL 实现点餐系统的订单管理功能

MySQL 实现点餐系统的订单管理功能在餐饮行业,点餐系统已经成为了不可或缺的一部分。它提供了方便快捷的点餐方式,大大提升了顾客用餐的便利性。而订单管理,作为点餐系统的关键功能之一,具备了查询、新增、修改和删除等基本操作的必要性。本文将介绍
MySQL 实现点餐系统的订单管理功能
2023-11-01

C#如何实现简单订单管理程序

这篇文章主要介绍“C#如何实现简单订单管理程序”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“C#如何实现简单订单管理程序”文章能帮助大家解决问题。订单管理的控制台程序,能够实现添加订单、删除订单、修
2023-06-30

客户和订单管理系统

简介客户和订单管理系统是一种旨在提高企业与客户之间的沟通效率、提升订单处理能力的工具。它通过整合客户信息、订单管理和物流跟踪等关键环节,为企业提供全面的客户管理解决方案。本文将详细介绍客户和订单管理系统的优势以及如何选择适合企业需求的系统。优势提高客户满意度:客户和订单管理系统能够帮助企业更好地了解客户需求,及时跟进订
客户和订单管理系统
2023-12-31

C语言如何实现酒店预订管理系统

这篇“C语言如何实现酒店预订管理系统”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C语言如何实现酒店预订管理系统”文章吧。课
2023-06-30

MySQL 实现点餐系统的订单状态管理功能

MySQL 实现点餐系统的订单状态管理功能,需要具体代码示例随着外卖业务的兴起,点餐系统成为了不少餐厅必备的工具。而订单状态管理功能是点餐系统中的一个重要组成部分,它能够帮助餐厅准确掌握订单的处理进度,提高订单处理效率,提升用户体验。本文将
MySQL 实现点餐系统的订单状态管理功能
2023-11-01

MySQL 实现点餐系统的订单评价管理功能

MySQL 实现点餐系统的订单评价管理功能在餐饮行业中,订单评价管理功能是非常重要的一部分。通过评价管理功能,店铺可以了解顾客对餐品和服务的满意度,从而优化经营策略和提供更好的服务。MySQL 是一个广泛应用于数据库管理的工具,本文将介绍如
MySQL 实现点餐系统的订单评价管理功能
2023-11-01

如何利用C++实现一个简单的火车票订购系统?

随着人们工作和生活方式的变化,越来越多的人选择乘坐火车出行。因此,实现一个简单的火车票订购系统可以方便用户预订车票,同时也可以提高工作效率,减少人力投入。本文将介绍如何使用C++实现一个简单的火车票订购系统,以方便读者学习和实践。一、需求分
如何利用C++实现一个简单的火车票订购系统?
2023-11-03

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录