| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1767 人关注过本帖
标题:问一个关于结构、文件、指针的问题
只看楼主 加入收藏
ehszt
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:40
帖 子:1745
专家分:3216
注 册:2015-12-2
收藏
得分:0 
num4和i4为什么多个4,还有你的程序每次输入结束都会输出“您输入的航班不存在,请重新输入!”,不管你输入的航班存不存在。
2016-09-01 12:48
惧惧
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2016-6-19
收藏
得分:0 
回复 11楼 ehszt
那个4 不用在意,是我们小组内部的编号
2016-09-01 13:03
惧惧
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2016-6-19
收藏
得分:0 
回复 11楼 ehszt
怎么改一下那个程序呢?
2016-09-01 13:55
ehszt
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:40
帖 子:1745
专家分:3216
注 册:2015-12-2
收藏
得分:0 
   int flag;
    while(1)
     {   
         flag=0;
         printf("请输入您所选的航班(如:AB1234):\n");
         scanf("%s",&num4);
         for(i=0;i<M;i++)
         {
            if(!strcmp(num,line[i].fnum))
            {
                flag=1;
                printf("航班号  始发地\n");
                printf("%s   %s",line[i].fnum,line[i].fstart);
            }
         }
     if(i4==M&&flag==0)
     printf("您输入的航班不存在,请重新输入!");
     }
2016-09-01 14:22
linlulu001
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:20
帖 子:944
专家分:4047
注 册:2016-4-13
收藏
得分:0 
#include <stdio.h>
#include <string.h>
#define M 2

struct flight
{
    char fnum[8];            //单字符改字符串
    char fstart[10];         //同上
};

int main()
{
    char num[8];            //同上
    char ch;                //跳出循环开关
    FILE *userfile;
    int i,a;
    struct flight line[3]={
        {"AB1234","beijing"    },{"CD1234","shanghai"},{"EF1234","shanxi"}
    };         //因为这里初始化字符串,所以上面的声明全部要改成字符串
   
    printf("****************************欢迎您选择购票系统!********************************\n");
    while(1)
    {
        printf("请输入您所选的航班(如:AB1234):\n");
        scanf("%s",num);                                    
        for(i=0;i<M;i++)
        {
           if(!strcmp(num,line[i].fnum))
           {
               printf("航班号  始发地\n");
               printf("%s   %s\n",line[i].fnum,line[i].fstart);
               break;                                                //这里要加上一句break,不然不管有没有找到,i都会等于M
           }
        }
        if(i==M)                           
        printf("您输入的航班不存在,请重新输入!\n");
        printf("是否继续查找:N or Y");
        scanf(" %c",&ch);
        if(ch=='n'||ch=='N')  break;
    }
   
     
    return 0;
}
2016-09-01 14:51
惧惧
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2016-6-19
收藏
得分:0 
回复 15楼 linlulu001
那如果这里边所有的结构都是存在于一个文件里面的话,怎么修改这个程序啊?谢谢~
2016-09-01 16:59
惧惧
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2016-6-19
收藏
得分:0 
回复 16楼 惧惧
而且是个二进制的文件
2016-09-01 17:15
linlulu001
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:20
帖 子:944
专家分:4047
注 册:2016-4-13
收藏
得分:0 
不明白你想问什么。
2016-09-01 17:16
惧惧
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2016-6-19
收藏
得分:0 
回复 18楼 linlulu001
这些结构都是存在于一个二进制文件里,我需要从文件里读取这个东西,打开文件和读取文件分别要加在哪里啊
2016-09-01 17:25
linlulu001
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:20
帖 子:944
专家分:4047
注 册:2016-4-13
收藏
得分:0 
看你的要求,而不是问别人。能帮你的就只有下面这一句:
读取文件一般用到fgetc(),fgets(),fread(),fscanf()这4种函数中的一种。
2016-09-01 17:59
快速回复:问一个关于结构、文件、指针的问题
数据加载中...
 
   



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

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