求助~~C++数据结构 一个简单的系统

求dalao看看我这个功能1系统哪里出问题了 (报错)
真.萌新

```--------------------Configuration: 1 - Win32 Debug--------------------
--------------------Configuration: 1 - Win32 Debug--------------------
Compiling...
1.cpp
C:\Users\16926\Desktop\vc6.0data\课余\text\1.cpp(104) : error C2065: 'strcmp' : undeclared identifier
C:\Users\16926\Desktop\vc6.0data\课余\text\1.cpp(162) : error C2065: 'display_line' : undeclared identifier
执行 cl.exe 时出错.

1.obj - 1 error(s), 0 warning(s)


#include <stdio.h>
#include <stdlib.h>
#define MAX 1024
//客户信息
typedef struct Custom           
{
    char name[12];          //客户姓名
    char sex[3];            //客户性别
    char phonenumber[20];   //客户手机号码
    char idcard[20];        //客户身份证号码
    int num;                //客户选择的机次号
    struct Custom *next;    //下一个结点
} Custom;

//头结点
typedef struct Customhead
{
    int count;
    Custom *next;
} Customhead;

//航班信息
typedef struct airline
{
    char line_num;      //航班号
    char start_place[20];   //起飞地
    char end_place[20];     //目的地
    char time1[10];         //起飞时间
    char time2[10];         //降落时间
    int total;              //总座位数
    int left;               //剩余座位数
    struct airline *next;   //下一个结点
} airline;

//头结点
typedef struct airlinehead
{
    int count;
    airline *next;
} airlinehead;


airlinehead* import(int n,airlinehead *pheadline)           //录入航班
{
    airline *temp = new airline;
    temp->next=NULL;
    pheadline->next=temp;
    pheadline->count = n;
    for(int i=1; i<n; i++)
    {
        printf("请输入%d个航班号:",i);
        scanf("%s",&temp->line_num);
        printf("请输入%d个航班的起飞地:",i);
        scanf("%s",&temp->start_place);
        printf("请输入%d个航班的目的地:",i);
        scanf("%s",&temp->start_place);
        printf("请输入%d个航班的起飞时间:",i);
        scanf("%s",&temp->time1);
        printf("请输入%d个航班的降落时间:",i);
        scanf("%s",&temp->time2);
        printf("请输入%d个航班的总座位数:",i);
        scanf("%s",&temp->total);
        if(i<n-2)
        {
            temp->next = new airline;
            if(temp->next == NULL)
            {
                printf("分配内存失败\n");
                exit(1);
            }
            temp->next->next=NULL;
            temp = temp->next;
        }
    }
}
airline* query(airlinehead *phead)      //查询航班信息
{
    int choose;
    airline *find=NULL;
    airline *temp;
            printf("=============查询=============\n");
            printf("* * * * 1按航班号查询* * * * \n");
            printf("* * * * 2按起飞地查询* * * * \n");
            printf("=============================\n");
            printf("请选择:");
                scanf("%d",&choose);
                    switch(choose)
                    {
                            case 1:
                                char line_num[10];
                                    printf("请输入航班号:");
                        scanf("%s",&line_num);
                        temp=phead->next;
                        while (temp)
                        {
                            if(strcmp(temp->line_num,line_num) == 0)
                            {
                                find=temp;
                                return temp;
                                break;
                            }
                            else
                            {
                                temp = temp->next;
                            }
                        }
                        if(!temp)
                            {
                                printf("没有找到航班信息。");
                                return NULL;
                            }
                        break;
                    }
}
int main ()
{
airlinehead *headline=new airlinehead;
headline->count=0;
headline->next=NULL;
    int select;
    int air_number;
    int n=0;
a:
    system("cls");
printf("\t|******************************************|\n");
printf("\t|* * * * * * * * 1.录入航班* * * * * * * * |\n");
printf("\t|* * * * * * * * 2.查询航班* * * * * * * * |\n");
printf("\t|* * * * * * * * 3.订票* * * * * * * * * * |\n");
printf("\t|* * * * * * * * 4.退票* * * * * * * * * * |\n");
printf("\t|* * * * * * * * 5.退出程序* * * * * * * * |\n");
printf("\t|******************************************|\n");
printf("请选择所需的服务;\n");
scanf("%d",&select);
switch(select)
        {
        case 1:
             int num;
            printf("请选择您要录入的航班的数目: ");
            scanf("%d",&num);
            printf("\n");
            import(num,headline);
            printf("\n");
                                    //display_all_line(headline);
            printf("航班信息成功录入。。");
            printf("\n\n");
            break;

        case 2:
                airline *find;
                find=query(headline);
                if(find)
                {
                    display_line(find);
                }
                printf("按任意键返回.........\n");
                getchar();
               break;
        case 3:
                printf("按任意键返回.........\n");
                getchar();
               break;
        case 4:
                printf("按任意键返回.........\n");
                getchar();
               break;
        case 5:exit(0);
        }

return 0;
}
c++

1个回答

scanf("%c%c%c%c%d",&L.air[n].line_num,&L.air[n].start_place,&L.air[n].end_place,&L.air[n].time1,&L.air[n].time2);
你这么输入,航班号只能是单个字符
要是字符串,你需要用%s,而不是%c

weixin_44301769
Clfye dalao 有空再帮我看看呗 嘿嘿
一年多之前 回复
weixin_44301769
Clfye 回复caozhy: hhhh
一年多之前 回复
caozhy
贵阳老马马善福专业维修游泳池堵漏防水工程 你真是一窍不通啊
一年多之前 回复
caozhy
贵阳老马马善福专业维修游泳池堵漏防水工程 while(L.air[n].line_num!=0) 你的航班号是字符串,怎么和0比较,当然死循环。
一年多之前 回复
weixin_44301769
Clfye 回复caozhy: 说的是这样嘛scanf("%s%s%s%s%d" 我就是这么改的
一年多之前 回复
caozhy
贵阳老马马善福专业维修游泳池堵漏防水工程 回复weixin_44301769: 后面类似,都要修改
一年多之前 回复
weixin_44301769
Clfye 改成%s还是不行呢
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐