基于C#的公交充值管理系统的设计与实现

项目描述

临近学期结束,还是毕业设计,你还在做C#程序网络编程,期末作业,老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等。这里根据疫情当下,你想解决的问题,今天给大家介绍一篇基于C#的公交充值管理系统的设计与实现。

功能需求

系统主要为城市公交开发一款公交卡充值管理系统,系统具有多城市通用性。本系统运用C#语言和Navicat for MySQL数据库实现。功能包括三个层面。注册界面:未注册的用户首先通过注册界面填写账户密码进行注册操作。登录界面:注册后在登录界面即该系统的主界面登录,登录后可以进行充值和查询操作。管理者界面:管理者可登录管理者界面进行对数据的改写和对账户的管理。

具备以下功能:

UML是开发者对系统用户根据不同功能权限进行划分,整理绘制出系统UML建模分析图。公交充值系统正常运营离不开相关维护人员和公交消费者。系统模块功能包括:用户注册、用户登录、用户充值、公交卡挂失、以及公交乘坐消费功能。
在这里插入图片描述

系统流程

在这里插入图片描述###### 部分效果图
在这里插入图片描述在这里插入图片描述

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

数据库设计

系统中用到了21张表,针对每个表都进行了设计,下面对部分核心表进行汇总罗列展示
用户数据表
在这里插入图片描述

公交卡数据表
在这里插入图片描述

部分代码
 <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
    <xsd:element name="root" msdata:IsDataSet="true">
      <xsd:complexType>
        <xsd:choice maxOccurs="unbounded">
          <xsd:element name="metadata">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" />
              <xsd:attribute name="type" type="xsd:string" />
              <xsd:attribute name="mimetype" type="xsd:string" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="assembly">
            <xsd:complexType>
              <xsd:attribute name="alias" type="xsd:string" />
              <xsd:attribute name="name" type="xsd:string" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="data">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="resheader">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" use="required" />
            </xsd:complexType>
          </xsd:element>
        </xsd:choice>
      </xsd:complexType>
    </xsd:element>
  </xsd:schema>
  <resheader name="resmimetype">
    <value>text/microsoft-resx</value>
  </resheader>
  <resheader name="version">
    <value>2.0</value>
  </resheader>
  <resheader name="reader">
    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <resheader name="writer">
    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
</root>

安装部署需求

Visual Studio运行启动

系统部署

系统开发后,在生产环境配置项目运行环境,具体步骤如下:
安装linux或者windows10操作系统;
安装MySQL5.7版本以上版本数据库,创建数据库并执行脚本创建表;
在IDEA中编辑进行打包;
下载并配置Tomcat8.0服务器,配置系统服务,上传项目打包文件

本项目用到的技术和框架

1.开发语言:C#
2.开发模式:B/S
3.数据库:MySQL
4.框架:C#

本项目中的关键点

此系统的开发采用java语言开发,基于B/S结构,这些开发环境使系统更加完善。使用到的工具和技术都是开源免费的。

硬件:笔记本电脑;
软件:Tomcat8.0 Web服务器、Navicat数据库客户端、MySQL;
操作系统:Windows 10;
其它软件:截图工具、常用浏览器;
以上是本系统的部分功能展示,如果你的选题正好相符,那么可以做毕业设计或课程设计使用。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
#include<iostream> using namespace std; class C { public: float card_fee; virtual void real_fee() = 0; virtual void show_the_real_fee() = 0; }; class student : public C { public: student(float fee) { card_fee = fee; } void real_fee(){ card_fee *= 0.5; }//计算学生的实际费用 void show_the_real_fee(){ cout << "学生实际的费用是:" << card_fee<<"元"<<endl; } }; class older : public C { public: older(float fee){ card_fee = fee; } void real_fee(){ card_fee *= 0.6; }//计算老人的实际费用 void show_the_real_fee(){ cout << "老人实际的费用是:" << card_fee << "元" << endl; } }; class normal : public C { public: normal(float fee){ card_fee = fee; } void real_fee(){ card_fee *= 0.95; }//计算一般的实际费用 void show_the_real_fee(){ cout << "一般市民实际的费用是:" << card_fee << "元" << endl; } }; void main() { cout << "请输入公交费原价:"; float fee; cin >> fee; cout <<"公交费原价为"<<fee<<"元"<< endl; cout << "请输入刷人群性质" << endl << "学生:请输 1;" << endl << "老人:请输 2;" << endl << "普通:请输 3;" << endl; int man; cin >> man;//2.定义了一个变量,用于了解用户刷的的种类,以便进行相应的计算 C *p_card;//3.定义了一个父类指针,为了方便对子类的操作(即:该指针指向"谁"时,用这个指针调用的函数就是"谁"的函数,因为子类的函数的名子都一样,函数里的内容不一样,调用不同子类的函数后,计算的结果就不同) switch (man)//4.根据用户的输入,开启相应的功能 { case 1: {student stu_card(fee); p_card = &stu_card; p_card->real_fee(); p_card->show_the_real_fee();}break; case 2: {older old_card(fee); p_card = &old_card; p_card->real_fee(); p_card->show_the_real_fee();}break; case 3: {normal normal_card(fee); p_card = &normal_card; p_card->real_fee(); p_card->show_the_real_fee();}break; default:cout <<"输入错误!"<< endl;//5.如果用户输入的不是1,2,3,而是其他字符,则报错 } getchar();getchar(); }
语言的软件开发具有哪些优点和缺点? C语言是一种高级编程语言,具有结构化程序设计、模块化设计和低级语言控制等优点。在软件开发中,基于C语言开发也具有许多优点和缺点。 优点: 1.高性能:C语言设计目的是可移植和高性能的系统编程语言,具有运行速度快和内存利用率高的特点。 2.灵活性:C语言的语法简洁,代码易于维护和修改,同时具有灵活性和可扩展性,有助于提高软件的可维护性和可扩展性。 3.开发成本低:C语言开发工具和开发文档非常齐全,开发成本相对较低,同时其底层机制的特点也使得熟悉C语言开发人员能够清晰地掌握程序的底层实现。 4.广泛应用:C语言被广泛应用于操作系统、嵌入式系统、游戏开发、网络应用、图形接口等软件领域,成为了具有重要地位的编程语言。 缺点: 1.易出错:C语言需要开发人员自己负责内存管理和指针的使用,容易出现内存泄露和指针悬垂等问题。 2.安全性差:C语言不提供自动垃圾回收机制,代码安全性较差,容易被黑客攻击和利用。 3.编写复杂:C语言需要程序员手动处理很多低级的、机器相关的操作,编写复杂,要求程序员对计算机的底层有深入的了解。 总之,基于C语言的软件开发在性能、灵活性、开发成本和应用领域上具有很多优势,但也存在易出错、安全性差和编写复杂等缺点。因此,在选择开发语言时,需要结合具体情况和需求进行综合考虑。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序猿麦小七

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值