任新闫浩组车次信息管理报告(6)

2020-02-22 14:23

沈阳工程学院课程设计报告 第4章 开始 功能选择 靠Switch语句实现选择 0退出系统 1-8和0对应不同的子函数 结束 图3-3 主函数功能图

3.5各功能模块实现

1. 增加功能:

具体代码如下,利用链表创建时,首先*p=head(head->=NULL),然后q= new NODE;再读入数据信息q->next=p,q->next=NULL:

void gongneng(NODE *n) {

q= new NODE; q->next=p; n=p=q;

cout<<\经过起点站名称:\ cin>>p->n;

cout<<\经过终点站名称:\ cin>>p->m;

cout<<\车次号码:\ cin>>p->num;

cout<<\发车时间:\ cin>>p->time; }

2. 显示功能:

具体代码如下,利用链表从头往后一直进行结点的遍历,在遍历的过程中实现数据的显

18

沈阳工程学院课程设计报告 第4章

示:

void gongneng() {

p=q;

while (p!=NULL) {

cout<<\经过起点站名称:\ cout<<\经过终点站名称:\ cout<<\车次号码:\ cout<<\开车时间:\

p=p->next; } p=q; }

3. 删除功能:

具体代码如下,找到结点后,利用k指针保存上一个指针,然后将p->next的地址赋值给k->next,再利用free()函数,实现p指针的数据清空:

void del( NODE *k)

{ {

k=new NODE; k=p=q; char n[20];

cout<<\请输入车次号码:\cin>>n;

while (p!=NULL&&(strcmp(p->num,n)!=0)!=0) {

k=p;

p=p->next;

}

if (p==NULL) {

cout<<\查无此车(-_-)!!\} else

if (p==q)

19

沈阳工程学院课程设计报告 第4章

q=q->next;

else

k->next=p->next; free(p); p=q;

cout<<\删除成功!\ } }

void del() {

p=q=NULL;

cout<<\所有信息已删除!\}

4. 修改功能:

具体代码如下,在找到需要修改的信息后,实现对信息的重新输入。首先是输入要修改的编号,系统会提示是否有此编号。根据提示进行有关信息的修改,修改完毕后会有提示修改成功并保存。程序如下:

void gongneng(char n[20])

{

p=q;

cout<<\请输入车次号码:\cin>>n;

while (p!=NULL&&(strcmp(p->num,n)!=0)!=0) {

p=p->next; }

if (p==NULL)

{cout<<\查无此车!!\} else {

cout<<\经过起点站名称:\ cin>>p->n;

cout<<\经过终点站名称:\ cin>>p->m;

cout<<\车次号码:\ cin>>p->num;

20

沈阳工程学院课程设计报告 第4章

cout<<\发车时间:\

cin>>p->time; }

cout<<\按任意键返回!!\}

5. 查询功能:

查询车次信息。在查询车次的函数里,首先通过链表的存在判断是否有资料存在。如果不存在,则界面提示:没有列车信息(-_-)!!当资料存在时,从键盘输入查询方式的选择:1车次查询;2站名查询;3站-站查询。

void gongneng() {

p=q;

char n[20]; char m[20];

char i;

cout<<\请选择查询方式:1车次查询;2站名查询;3站-站查询\\n\ cin>>i; if (p==NULL) {

cout<<\没有列车信息(-_-)!!\ }

switch(i) { case'1': {

cout<<\请输入车次号码:\ cin>>n; while (p!=NULL) {

if(strcmp(p->num,n)==0) {

cout<<\经过起点站名称:\ cout<<\经过终点站名称:\ cout<<\车次号码:\ cout<<\开车时间:\

21

沈阳工程学院课程设计报告 第4章

}

p=p->next; }

cout<<\按任意键返回!!\ return; } case'2':

{cout<<\请输入站名:\ cin>>n;

while (p!=NULL) {

if((strcmp(p->n,n)==0)||(strcmp(p->m,n)==0)) { cout<<\经过起点站名称:\ cout<<\经过终点站名称:\ cout<<\车次号码:\ cout<<\开车时间:\ }

p=p->next; }

cout<<\按任意键返回!!\ return;

}

case'3':{cout<<\请输入起点站名:\ cin>>n;

cout<<\请输入终点站名:\ cin>>m;

while (p!=NULL) {

if((strcmp(p->n,n)==0)&&(strcmp(p->m,m)==0)) {

cout<<\经过起点站名称:\ cout<<\经过终点站名称:\ cout<<\车次号码:\ cout<<\开车时间:\ }

p=p->next; }

22


任新闫浩组车次信息管理报告(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:工作政治思想表现评语-word范文文档

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: