标题:求助帖,帮忙修改一下程序,关于飞机订票系统的设计
只看楼主
xy863670021
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2016-6-23
结帖率:0
已结贴  问题点数:10 回复次数:15 
求助帖,帮忙修改一下程序,关于飞机订票系统的设计
#include<stdio.h>
#include<string.h>
#include <windows.h>
#define N 20
void input();
void display();
void find();
struct
{
   
    char flightno[10];//航班号
    char start[10]; //起始站
    char end[10];//终点站
    float day;//飞行时间
    int totalticket;//预售票总数
    int sellticket;//已售票总数
}flight[N];//航班结构体
int nowN;
int main()/*主函数*/
    {
        int a;
        start:printf("\n\t\t\t欢迎使用飞机订票管理系统\n");
        /*以下为功能选择模块*/
        do
        {printf("\n\t\t\t\t1.录入航班信息\n\t\t\t\t2.显示航班信息\n\t\t\t\t3.查询航班信息\n\t\t\t\t4.退出整个程序\n");
        printf("\t\t\t\t选择功能选项:");
        fflush(stdin);
        scanf("%d",&a);
        switch(a)
            {
                case 1:system("cls");input();break;
                case 2:system("cls");display();break;
                case 3:system("cls");find();break;
                case 4:system("exit");exit(0);
                default:system("cls");goto start;
            }
        }while(1); /*至此功能选择结束*/
}

void input()/*录入航班信息*/
void main()
{   
    FILE*in;
    char ch[60],sh[60],bh[60],zh[60];
    if((in=fopen("d:\\test.txt","w"))==NULL)
    {
        printf("can not open file\n");
        exit(0);
    }
    int i=0;
    char b;

    {printf("\t\t\t\t1.录入航班信息\n输入第%d个航班的信息\n",i+1);
    printf("\n输入航班号:");
    fflush(stdin);
    gets(flight[i].flightno.ch);
    printf("\n输入起始站:");
    fflush(stdin);
    gets(flight[i].start.sh);
    printf("\n输入终点站:");
    fflush(stdin);
    gets(flight[i].end.bh);
    printf("\n输入飞行时间:");
    fflush(stdin);
    scanf("%f",&flight[i].day.zh);
    printf("\n\n");
    i++;
    nowN=i;
    printf("\n是否继续输入?(Y/N)");
    fflush(stdin);
    b=getchar();
    system("cls");
    }
while(b!='n'&&b!='N');
system("cls");
}
void display()/*显示航班信息*/
    {   int i;
        char c;
        do{
        printf("\t\t航班信息列表\n");
        printf("\t航班号\t起始站\t终点站\t飞行时间\n");
        for(i=0;i<nowN&&flight[i].flightno[0];i++)
        printf("\t%s\t%s\t%s\t%f\n",flight[i].flightno,flight[i].start,flight[i].end,flight[i].day);
        printf("\t\t按任意键返回主菜单.");
        fflush(stdin);
        c=getchar();
        }while(!c);
    system("cls");
    }
    void find()/*查询航班信息*/
{
    void flightnofind();
    void startfind();
    void endfind();
    void dayfind();
    int g;
    start:printf("\n\t\t\t\t航班信息查询\n");
    do
        {
        printf("\n\t\t\t\t1.按航班号查询\n\t\t\t\t2.按起始站查询\n\t\t\t\t3.按终点站查询\n\t\t\t\t4.按飞行时间查询\n\t\t\t\t5.返回主菜单\n\t\t\t\t6.退出整个程序");
        printf("\n输入查询功能选项:");
        fflush(stdin);
        scanf("%d",&g);
        switch(g)
        {case 1:system("cls");flightnofind();break;
        case 2:system("cls");startfind();break;
        case 3:system("cls");endfind();break;
        case 4:system("cls");dayfind();break;
        case 5:system("cls");main();break;
        case 6:system("exit");exit(0);
        default:system("cls");goto start;}
        }while(1);
}
void flightnofind()
    {
    int j;
    char string[20],h;
    do
        {
        printf("\n输入要查询的航班号:");
        fflush(stdin);
        gets(string);
        for(j=0;j<nowN;j++)
        if(!strcmp(flight[j].flightno,string))
            {
            printf("\t航班号\t起始站\t终点站\t飞行时间\n");
            printf("\t%s\t%s\t%s\t%f",flight[j].flightno,flight[j].start,flight[j].end,flight[j].day);
            }
        printf("\t\t按任意键返回选择菜单");
        fflush(stdin);
        h=getchar();
        }while(!h);
    system("cls");
    }
void startfind()

{
int i;
char string[20],as;
    do
    {
    printf("\n输入要查询的起始站:");
    fflush(stdin);
    gets(string);
    for(i=0;i<nowN;i++)
    if(!strcmp(flight[i].start,string))
        {
        printf("\t航班号\t起始站\t终点站\t飞行时间\n");
        printf("\t%s\t%s\t%s\t%f",flight[i].flightno,flight[i].start,flight[i].end,flight[i].day);}
        printf("\t\t按任意键返回选择菜单");
        fflush(stdin);
        as=getchar();
        }while(!as);
    system("cls");
    }
void endfind()
{
int i;
char string[20],as;
    do
    {
    printf("\n输入要查询的终点站:");
    fflush(stdin);
    gets(string);
    for(i=0;i<nowN;i++)
    if(!strcmp(flight[i].end,string))
        {
        printf("\t航班号\t起始站\t终点站\t飞行时间\n");
        printf("\t%s\t%s\t%s\t%f",flight[i].flightno,flight[i].start,flight[i].end,flight[i].day);}
        printf("\t\t按任意键返回选择菜单");
        fflush(stdin);
        as=getchar();
        }while(!as);
    system("cls");
    }
void dayfind()
{
int i;
float a;
char as;
do
{
    printf("\n输入要查询的飞行时间:");
    fflush(stdin);
    scanf("%f",&a);
    for(i=0;i<nowN;i++)
    if(a==flight[i].day)
        {
        printf("\t航班号\t起始站\t终点站\t飞行时间\n");
        printf("\t%s\t%s\t%s\t%f\n",flight[i].flightno,flight[i].start,flight[i].end,flight[i].day);}
        printf("\t\t按任意键返回选择菜单");
        fflush(stdin);
        as=getchar();
        }while(!as);
    system("cls");
}
搜索更多相关主题的帖子: display include 管理系统 flight 终点站 
2016-06-23 16:39
xy863670021
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2016-6-23
得分:0 
总是在输出文件报错
2016-06-23 16:39
xy863670021
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2016-6-23
得分:0 
附图一张
2016-06-23 16:47
grmmylbs
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:54
帖 子:1409
专家分:5845
注 册:2016-2-14
得分:2 
定义了2个main函数
2016-06-23 17:05
a120750
Rank: 4
等 级:业余侠客
威 望:1
帖 子:63
专家分:243
注 册:2016-3-13
得分:2 
程序代码:

/*这代码看的神奇,看样子并不像是楼主写的。
    有问题的代码已经备注,自己慢慢看。
*/

#include<stdio.h>
#include<string.h>
#include <windows.h>
#define N 20
void input();
void display();
void find();
struct
{
    
    char flightno[10];//航班号
    char start[10]; //起始站
    char end[10];//终点站
    float day;//飞行时间
    int totalticket;//预售票总数
    int sellticket;//已售票总数
}flight[N];//航班结构体
int nowN;
//定义两个main函数
int main()/*主函数*/
    {
        int a;
        start:printf("\n\t\t\t欢迎使用飞机订票管理系统\n");
        /*以下为功能选择模块*/
        do
        {printf("\n\t\t\t\t1.录入航班信息\n\t\t\t\t2.显示航班信息\n\t\t\t\t3.查询航班信息\n\t\t\t\t4.退出整个程序\n");
        printf("\t\t\t\t选择功能选项:");
        fflush(stdin);
        scanf("%d",&a);
        switch(a)
            {
                case 1:system("cls");input();break;
                case 2:system("cls");display();break;
                case 3:system("cls");find();break;
                case 4:system("exit");exit(0);
                default:system("cls");goto start;
            }
        }while(1); /*至此功能选择结束*/
}


//此处申明函数没有分号


void input()/*录入航班信息*/
void main()
{   
    FILE*in;
    char ch[60],sh[60],bh[60],zh[60];
    if((in=fopen("d:\\test.txt","w"))==NULL)
    {
        printf("can not open file\n");
        exit(0);
    }
    int i=0;
    char b;

    {printf("\t\t\t\t1.录入航班信息\n输入第%d个航班的信息\n",i+1);
    printf("\n输入航班号:");
    fflush(stdin);

    gets(flight[i].flightno.ch);    //此处的.ch是什么鬼。。

    printf("\n输入起始站:");
    fflush(stdin);

    gets(flight[i].start.sh);  //.sh是什么鬼。

    printf("\n输入终点站:");
    fflush(stdin);

    gets(flight[i].end.bh);    //.bh是什么鬼

    printf("\n输入飞行时间:");
    fflush(stdin);

    scanf("%f",&flight[i].day.zh); //.zh是什么鬼

    printf("\n\n");
    i++;
    nowN=i;
    printf("\n是否继续输入?(Y/N)");
    fflush(stdin);
    b=getchar();
    system("cls");
    }
while(b!='n'&&b!='N');
system("cls");
}
void display()/*显示航班信息*/
    {   int i;
        char c;
        do{
        printf("\t\t航班信息列表\n");
        printf("\t航班号\t起始站\t终点站\t飞行时间\n");
        for(i=0;i<nowN&&flight[i].flightno[0];i++)
        printf("\t%s\t%s\t%s\t%f\n",flight[i].flightno,flight[i].start,flight[i].end,flight[i].day);
        printf("\t\t按任意键返回主菜单.");
        fflush(stdin);
        c=getchar();
        }while(!c);
    system("cls");
    }
    void find()/*查询航班信息*/
{
    void flightnofind();
    void startfind();
    void endfind();
    void dayfind();
    int g;
    start:printf("\n\t\t\t\t航班信息查询\n");
    do
        {
        printf("\n\t\t\t\t1.按航班号查询\n\t\t\t\t2.按起始站查询\n\t\t\t\t3.按终点站查询\n\t\t\t\t4.按飞行时间查询\n\t\t\t\t5.返回主菜单\n\t\t\t\t6.退出整个程序");
        printf("\n输入查询功能选项:");
        fflush(stdin);
        scanf("%d",&g);
        switch(g)
        {case 1:system("cls");flightnofind();break;
        case 2:system("cls");startfind();break;
        case 3:system("cls");endfind();break;
        case 4:system("cls");dayfind();break;
        case 5:system("cls");main();break;
        case 6:system("exit");exit(0);
        default:system("cls");goto start;}
        }while(1); 
}
void flightnofind()
    {
    int j;
    char string[20],h;
    do
        {
        printf("\n输入要查询的航班号:");
        fflush(stdin);
        gets(string);
        for(j=0;j<nowN;j++)
        if(!strcmp(flight[j].flightno,string))
            {
            printf("\t航班号\t起始站\t终点站\t飞行时间\n");
            printf("\t%s\t%s\t%s\t%f",flight[j].flightno,flight[j].start,flight[j].end,flight[j].day);
            }
        printf("\t\t按任意键返回选择菜单");
        fflush(stdin);
        h=getchar();
        }while(!h);
    system("cls");
    }
void startfind()

{
int i;
char string[20],as;
    do
    {
    printf("\n输入要查询的起始站:");
    fflush(stdin);
    gets(string);
    for(i=0;i<nowN;i++)
    if(!strcmp(flight[i].start,string))
        {
        printf("\t航班号\t起始站\t终点站\t飞行时间\n");
        printf("\t%s\t%s\t%s\t%f",flight[i].flightno,flight[i].start,flight[i].end,flight[i].day);}
        printf("\t\t按任意键返回选择菜单");
        fflush(stdin);
        as=getchar();
        }while(!as);
    system("cls");
    }
void endfind()
{
int i;
char string[20],as;
    do
    {
    printf("\n输入要查询的终点站:");
    fflush(stdin);
    gets(string);
    for(i=0;i<nowN;i++)
    if(!strcmp(flight[i].end,string))
        {
        printf("\t航班号\t起始站\t终点站\t飞行时间\n");
        printf("\t%s\t%s\t%s\t%f",flight[i].flightno,flight[i].start,flight[i].end,flight[i].day);}
        printf("\t\t按任意键返回选择菜单");
        fflush(stdin);
        as=getchar();
        }while(!as);
    system("cls");
    }
void dayfind()
{
int i;
float a;
char as;
do
{
    printf("\n输入要查询的飞行时间:");
    fflush(stdin);
    scanf("%f",&a);
    for(i=0;i<nowN;i++)
    if(a==flight[i].day)
        {
        printf("\t航班号\t起始站\t终点站\t飞行时间\n");
        printf("\t%s\t%s\t%s\t%f\n",flight[i].flightno,flight[i].start,flight[i].end,flight[i].day);}
        printf("\t\t按任意键返回选择菜单");
        fflush(stdin);
        as=getchar();
        }while(!as);
    system("cls");
}


[此贴子已经被作者于2016-6-23 17:21编辑过]

2016-06-23 17:18
xy863670021
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2016-6-23
得分:0 
回复 5楼 a120750
刚学c语言,期末课题是这,网上找了一个代码改来改去想让它每个功能都能输出,就是那串输出txt的代码错了,能改改不
2016-06-23 17:44
lanke711
Rank: 9Rank: 9Rank: 9
来 自:流浪在天国之路
等 级:蜘蛛侠
威 望:7
帖 子:317
专家分:1437
注 册:2015-7-16
得分:2 
一个程序项目中,main函数只能有一个.你把void main()这个函数名改成别的.然后int main()函数就是主函数了。其它的你再看看有没有报错?

普通人之所以普通,是因为他们普遍有一个通病,那就是认为自己永远普通。
千夫所指,我亦坚持。就算被所有人误解,我也照样守护这一切。
我们总是觉得,这些灵魂的表情,傲慢自大,目中无人,其实,真正目中无人的是我们。它们傲慢的不过是表情,而我们傲慢的却是行为!
记得,是为了忘记!
只要想着有那么一天,我就能忍受现在的每一天!
灾难并不可怕,可怕的是心中没有了希望。
你以为我在天堂,其实我正在路上。
当你觉得自己走不到终点的时候,请不要放弃。或许你的对手也是这种感觉。
2016-06-23 22:42
xy863670021
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2016-6-23
得分:0 
#include<stdio.h>
#include<string.h>
#include <windows.h>
#define N 20
void input();
void display();
void find();
struct
{
   
    char flightno[10];//航班号
    char start[10]; //起始站
    char end[10];//终点站
    float day;//飞行时间
    int totalticket;//预售票总数
    int sellticket;//已售票总数
}flight[N];//航班结构体
int nowN;
int main()/*主函数*/
{   
        int a;
        start:printf("\n\t\t\t欢迎使用飞机订票管理系统\n");
        /*以下为功能选择模块*/
        do{printf("\n\t\t\t\t1.录入航班信息\n\t\t\t\t2.显示航班信息\n\t\t\t\t3.查询航班信息\n\t\t\t\t4.退出整个程序\n");
        printf("\t\t\t\t选择功能选项:");
        fflush(stdin);
        scanf("%d",&a);
        switch(a)
        {
            case 1:system("cls");input();break;
            case 2:system("cls");display();break;
            case 3:system("cls");find();break;
            case 4:system("exit");exit(0);
            default:system("cls");goto start;
        }
    }while(1); /*至此功能选择结束*/   
}
void input()/*录入航班信息*/
{   
    int i=0;
    char b;
    printf("\t\t\t\t1.录入航班信息\n输入第%d个航班的信息\n",i+1);
    printf("\n输入航班号:");
    fflush(stdin);
    gets(flight[i].flightno);
    printf("\n输入起始站:");
    fflush(stdin);
    gets(flight[i].start);
    printf("\n输入终点站:");
    fflush(stdin);
    gets(flight[i].end);
    printf("\n输入飞行时间:");
    fflush(stdin);
    scanf("%f",&flight[i].day);
    printf("\n\n");
    i++;
    nowN=i;
    printf("\n是否继续输入?(Y/N)");
    fflush(stdin);
    b=getchar();
    system("cls");
while(b!='n'&&b!='N');
system("cls");
}
void display()/*显示航班信息*/
    {   
        int i;
        char c;
        do{
        printf("\t\t航班信息列表\n");
        printf("\t航班号\t起始站\t终点站\t飞行时间\n");
        for(i=0;i<nowN&&flight[i].flightno[0];i++)
        printf("\t%s\t%s\t%s\t%f\n",flight[i].flightno,flight[i].start,flight[i].end,flight[i].day);
        printf("\t\t按任意键返回主菜单.");
        fflush(stdin);
        c=getchar();
        }while(!c);
    system("cls");
    }
    void find()/*查询航班信息*/
{
    void flightnofind();
    void startfind();
    void endfind();
    void dayfind();
    int g;
    start:printf("\n\t\t\t\t航班信息查询\n");
    do
        {
        printf("\n\t\t\t\t1.按航班号查询\n\t\t\t\t2.按起始站查询\n\t\t\t\t3.按终点站查询\n\t\t\t\t4.按飞行时间查询\n\t\t\t\t5.返回主菜单\n\t\t\t\t6.退出整个程序");
        printf("\n输入查询功能选项:");
        fflush(stdin);
        scanf("%d",&g);
        switch(g)
        {case 1:system("cls");flightnofind();break;
        case 2:system("cls");startfind();break;
        case 3:system("cls");endfind();break;
        case 4:system("cls");dayfind();break;
        case 5:system("cls");main();break;
        case 6:system("exit");exit(0);
        default:system("cls");goto start;}
        }while(1);
}
void flightnofind()
    {
    int j;
    char string[20],h;
    do
        {
        printf("\n输入要查询的航班号:");
        fflush(stdin);
        gets(string);
        for(j=0;j<nowN;j++)
        if(!strcmp(flight[j].flightno,string))
            {
            printf("\t航班号\t起始站\t终点站\t飞行时间\n");
            printf("\t%s\t%s\t%s\t%f",flight[j].flightno,flight[j].start,flight[j].end,flight[j].day);
            }
        printf("\t\t按任意键返回选择菜单");
        fflush(stdin);
        h=getchar();
        }while(!h);
    system("cls");
    }
void startfind()

{
int i;
char string[20],as;
    do
    {
    printf("\n输入要查询的起始站:");
    fflush(stdin);
    gets(string);
    for(i=0;i<nowN;i++)
    if(!strcmp(flight[i].start,string))
        {
        printf("\t航班号\t起始站\t终点站\t飞行时间\n");
        printf("\t%s\t%s\t%s\t%f",flight[i].flightno,flight[i].start,flight[i].end,flight[i].day);}
        printf("\t\t按任意键返回选择菜单");
        fflush(stdin);
        as=getchar();
        }while(!as);
    system("cls");
    }
void endfind()
{
int i;
char string[20],as;
    do
    {
    printf("\n输入要查询的终点站:");
    fflush(stdin);
    gets(string);
    for(i=0;i<nowN;i++)
    if(!strcmp(flight[i].end,string))
        {
        printf("\t航班号\t起始站\t终点站\t飞行时间\n");
        printf("\t%s\t%s\t%s\t%f",flight[i].flightno,flight[i].start,flight[i].end,flight[i].day);}
        printf("\t\t按任意键返回选择菜单");
        fflush(stdin);
        as=getchar();
        }while(!as);
    system("cls");
    }
void dayfind()
{
int i;
float a;
char as;
do
{
    printf("\n输入要查询的飞行时间:");
    fflush(stdin);
    scanf("%f",&a);
    for(i=0;i<nowN;i++)
    if(a==flight[i].day)
        {
        printf("\t航班号\t起始站\t终点站\t飞行时间\n");
        printf("\t%s\t%s\t%s\t%f\n",flight[i].flightno,flight[i].start,flight[i].end,flight[i].day);}
        printf("\t\t按任意键返回选择菜单");
        fflush(stdin);
        as=getchar();
        }while(!as);
    system("cls");
}
2016-06-24 00:14
xy863670021
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2016-6-23
得分:0 
我编译了一下,然后出现了个这
C:\Users\Administrator\Desktop\C语言课程设计(李勇2015021049 许炀2015021044\程序\FJDP\aaa.cpp(37) : warning C4508: 'main' : function should return a value; 'void' return type assumed
2016-06-24 00:15
xy863670021
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2016-6-23
得分:0 
aaa.obj - 0 error(s), 0 warning(s)
2016-06-24 00:16



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-466285-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.100838 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved