概要:

C 语言课程设计一---学生管理系统

使使用 C 语言实现学生管理系统。系统实现对学生的基本信息和考试成绩的 管理。采用终端命令界面,作为系统的输入输出界面。采用文件作为信息存储介质。

功能描述:

学生信息:

基本信息:
学号: int
姓名: char 128
密码: char 32
年龄: int
班级: int

成绩信息:
数学成绩: int
C 语言成绩:int
语文成绩: int
名次: int

  1. 1、  实现对学生信息基本信息的录入,其中名次根据成绩自动计算(添加)。学号不能
    重复。

  2. 2、  删除学生信息

  3. 3、  修改学生信息

  4. 4、  查找学生信息

    a) 根据学号查找
    b) 根据姓名查找
    c) 根据班级群体查找,把属于这个班的学生全部显示

  5. 5、  显示所有学生信息列表
    a) 按学号顺序显示
    b) 按名次显示
    c) 按某学科(可选)成绩顺序显示,并在最后显示出此科平均分。

  6. 6、  保存学生信息
    修改后的信息保存到文件中。当程序启动后从文件中读取信息,至内存。

    在做添加删除修改时信息保存至内才中。(在内存中使用链表或数组...保存)。

    7、 退出系统

a) 如果有修改操作要提示是否保存。

教师信息:

教员序号:int
教员姓名:char 128
教员密码:char 32
所任班级: int

1、对老师信息的添加、删除、修改、显示、保存。教员序号不能重复。
登陆功能:

1、系统启动后提示登陆界面。使用用户名和密码登陆。学生和老师都可以登陆。
2、用户名和密码正确登陆成功。显示欢迎界面:”欢迎 XX 同学(或老师)登陆”
显示操作界面。
3、如果输入用户名和密码错误接续提示,超过 3 次程序自动退出。
4、除老师和学生外,系统有一个特殊用户超级管理员用户。用户名固定(admin),

也可以固定。
5、超级管理员、老师和学生有不同的操作界面。

管理权限:

      超级管理员 :可以对老师学生做所有操作。
      老师    :可以查看自己的信息,和修改自己的密码。
             可以查看所有学生的信息,修改学生的成绩信息。
      学生    :可以查看自己的信息,和修改自己的基本信息。

课程要求:

  分以下几步完成。
      第一步:完成学生信息管理的部分。
      第二步:完成老师信息管理、和登陆管理。
      第三步:完成权限管理。

C 语言程序设计二:火车订票系统

一.需求设计: 1.每条线路所涉及的信息有:起点、终点、站名、车次、票价、时间、座位号、所经站点(多 个)。 2.作为示意系统,全部数据保存至文件中。程序启动后从文件中读取加载至内存中。 3.系统能实现的功能和操作如下: 1.查询路线:根据旅客提出的终点站名输入下列信息:车次、车站名。

2.承办订票业务:根据客户提出的要求查询该车次票额的情况,若尚有余票,则为客户办 理订票手续,输出座位号;若已满员或余票额少于订票额,则需重新查询客户要求,若需要 可登记排队候补。

3.承办退票业务:根据客户提供的情况(车次、时间、座位号)为客户办理退票手续,然 后查询该车次是否有人排队候补,首先询问排在第一的客户,若所退票额能满足他的要求, 则为他办理订票手续,否则依次询问其他排队候补的客户。

4登记旅客情况:包括旅客姓名,性别,年龄,家庭住址,联系方式等。
5统计功能:将每次车的订票,退票结果统计出来。

6管理功能:列车管理员可以通过调用函数来查看车票及其用户情况.可以增加、删除线路信 息。

7.查询功能:用户可以查询自己需要的车辆信息. 二.总体设计

1. 总体设计说明:
1.数据结构设计:
程序=数据结构+算法,一个好的程序必定有一个好的数据结构.本设计主要考虑车票信息
和用户信息的数据结构.
车票信息采用半十字链表.横向链表中的每一个结点包含以下内容:车次,起始站,发车时
间,指向下一个结点的指针,指向中途站的指针。纵向链表中每一个结点包含以下内容:
从始发站开始的依次到站,票价,到达时间,是否已被购买标识,采用 mark 标识,当 mark 为 1
时车票已售出,当 mark 为 0 时车票还未售出.以及指向下一个结点的指针.纵向链表采用循
环链表,尾指针指向首指针。

2.
未购票用户信息使用队列来保存,因为考虑到用户会预订票,所以把用户来订票的时间早
晚排在队中.先来先买,后来后买.队列中的每个元素包含以下内容:用户姓名,SFZ 号码,想
要购票的车次,起始站,要到的站,时间.
已经购票用户信息使用一个单链表来保存,链表中的每个结点包含以下内容:用户姓
名,SFZ 号码,已购车票的车次,出发时间,到达时间.

车票信息链表示意图:
车次、 起始站、终点站、发车时间、 到站时间、 票价、 座位号

未购票用户信息队列:
用户姓名

购票的车次
起始站
要到的站
达到时间

注: 座位号包含在车次号中

已购票用户信息链表示意图: 用户姓名

SFZ 号码 已购车票的车次号 出发时间 到达时间

注:座位号包含在车次号中 2、界面设计说明

1、程序开始运行提示: 请选择用户操作: 1、登录 2、新用户注册

2、旅客用户登录后界面: 1、用户基本信息维护 2、查询操作

子菜单如下:
a、按车次,查询车次信息。
b、按车次、日期,查询座位信息。
a、按始发站、终点站、日期查询座位信息。

3、订票操作
4、退票操作
5、注销

 

3、管理员用户界面:
1、管理旅客用户信息

子菜单如下:
a、旅客用户查询

b、旅客用户信息列表显示
c、旅客用户增加
d、旅客用户删除
e、旅客用户修改

2、管理车次信息
子菜单如下:

a、车次查询
b、车次列表信息显示
c、车次增加
d、车次删除
e、车次修改

3、统计

4、用户信息管理

5、注销

my github :git@github.com:Kevin-Dfg/Data-Structures-and-Algorithm-Analysis-in-C.git

学生管理系统-火车订票系统 c语言课程设计的更多相关文章

  1. 奥运会订票系统c语言代写源码下载

    制作能够实现2008北京奥运会网上订票的系统,能够实现购票人员注册.购票.管理人员可以设置各个比赛场地的赛事安排及票数. 程序要求实现的功能如下: 购票者信息注册:购票者可以用昵称和身份证进行注册,若 ...

  2. C语言课程设计——电影院订票系统

    1. 课题简介 大家都爱看电影,现请参考一个熟悉电影票预订系统,实现C语言版的订票系统.了解订票如何实现的.系统主要有2类用户:管理员用户和顾客用户. 管理员用户登录系统后,实现电影放映厅信息管理和电 ...

  3. 课程设计之(struts2+Hibernate)航空订票系统

    1.题目 课程设计之航空订票系统 为某家机票预订服务商开发一个机票预订和查询管理系统.该系统中的航班和机票信息由多家航空公司负责提供.客户通过上网方式查询航班时间表.机票可用信息.机票折扣信息,可以远 ...

  4. windows API 开发飞机订票系统 图形化界面 (四)

    接下来的是录入航班.修改航班信息功能的实现: //录入航班 BOOL EntryFlight(HWND hEntryDlg){ TCHAR szDiscount[]; TCHAR szFare[],s ...

  5. web类协议脚本-飞机订票系统示例

    以下是LR自带的飞机订票系统的Demo,希望能帮助大家. Action() { int iRand; int iTmp; char *strTmpA; char *strTmpB; char *str ...

  6. loadrunner飞机订票系统从登陆订票退票登出的脚本实现代码调试通过

    在LR自带的飞机订票系统中,完整模拟一个用户从登陆->订票->退票->登出这样一个业务流程,分解每个事务为一个Action: 进入首页->登陆->进入订票页面->选 ...

  7. loadrunner笔记(二):飞机订票系统--客户信息注册

    (一)  几个重要概念说明 集合点:同步虚拟用户,以便同一时间执行任务. 事务:事务是指服务器响应用户请求所用的时间,当然它可以衡量某个操作,如登录所需要的时间,也可以衡量一系列的操作所用的时间,如从 ...

  8. LoadRunner 自带订票系统flights 功能空白、1080端口被占用的解决办法

    LoadRunner 自带订票系统flights 功能空白.1080端口被占用的解决办法 安装LoadRunner8.1后运行Mercury Web Tours Application,点击fligh ...

  9. Loadrunner录制+运行+结果-【飞机订票系统实战】

    目录结构: 一.LoadRunner实现订票系统脚本录制 二.Loadrunner实现订票系统IP欺骗(此处可以不设置) 三.Loadrunner运行录制的脚本 四.Load generator配置 ...

随机推荐

  1. sql server2014各版本对比(连接)

    简单的说,sql server 2014为企业版(全功能).BI版.标准版. SQL Server 2014 各个版本支持的功能 http://msdn.microsoft.com/zh-cn/lib ...

  2. (二)iOS如何把所有界面的状态栏的字体颜色都设置为白色

    第一步:在info.plist中添加一个字段:view controller -base status bar 设置为NO 第二步:在一个所有界面都继承的父类里添加: if (IOS7_OR_LATE ...

  3. JavaScript之document对象使用

    1.document 对象常用的有三种: A.document.getElementById:通过html元素的Id,来获取html对象.适用于单个的html元素. B.document.getEle ...

  4. .net 找回密码的第一步 第二步 第三步的进程条

    先写一个div作为存放这个进程条的容器 开始写js 根据jQuery选择器找到需要加载ystep1的容器 loadstep方法可以初始化 steps参数表示步骤名称,content则是鼠标移动到当前位 ...

  5. 12-24 关于UIScroView 控件的学习

    在iOS开发中,滚动视图(UIScrollView)通常用于显示内容尺寸大于屏幕尺寸的视图.滚动视图有以下两个主要作用: 让用户可以通过拖拽手势来观看想看到的内容 让用户可以通过捏合手势来放大或缩小观 ...

  6. AFNetworking实现程序重新启动时的断点续传

    今天需要用AFNetworking实现断点续传的功能,但是在进行了一番研究之后,发现AFNetworking虽然支持下载文件的暂停和继续,但是程序重新启动后再次下载无法进行续传.网上有说可以通过AFD ...

  7. 【LeetCode OJ】Palindrome Partitioning

    Problem Link: http://oj.leetcode.com/problems/palindrome-partitioning/ We solve this problem using D ...

  8. Redis - 常用命令操作

    常用命令keys:        keys *        查看符合条件的所有key exists:        exists key    查看key是否存在 del:        del k ...

  9. 第一个Sprint冲刺第五天

    讨论成员:邵家文.李新.朱浩龙.陈俊金 讨论问题:掌握计时技术的知识 讨论地点:qq网络 进展:完成对功能的理解

  10. sprint计划会议

    会议召开时间表 日期 时间 内容 05/09 21:00-22:00 讨论题目(未果) 05/10 21:00-21:30 确定题目(网络助手) 05/13 21:00-21:45 讨论软件页面设计 ...