| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 762 人关注过本帖
标题:磁盘文件里出现 烫烫烫烫烫烫 怎么回事啊
只看楼主 加入收藏
昵称
Rank: 1
等 级:新手上路
帖 子:6
专家分:2
注 册:2013-6-18
结帖率:0
收藏
已结贴  问题点数:10 回复次数:1 
磁盘文件里出现 烫烫烫烫烫烫 怎么回事啊
#include "stdio.h"
#include "stdlib.h"
#include "string.h"

void menu();
void guahao();
void jiaohao(int n);
void zhenshi();
void xinxi();
void qingkuang();


typedef struct patient
{
    char name[20];
    int num;
    char sex[10];
    int age;
    char room[20];

}PA;
void main()
{
    char choice;
    int j=0;
A:    system("cls");
    menu();
    choice=getch();
    switch(choice)
    {
    case '1':
        guahao();
        break;
    case '2':
        jiaohao(j);
        j++;
        break;
    case '3':
        zhenshi();
        break;
    case '4':
        xinxi();
        break;
    case '5':
       qingkuang();
        break;
    case '6':
        system("cls");
        puts("\n\t\t感谢您的使用!\n\n");
        exit(0);
        break;
    }

    printf("\n\n\t按下回车键回到主菜单!");
    getchar();
    goto A;
}


void menu()
{
    puts("\t欢迎使用! 输入数字进行选择:\n");
    puts("\t    1--挂号    \n");
    puts("\t    2--叫号    \n");
    puts("\t    3--分诊室    \n");
    puts("\t    4--显示各诊室队列信息    \n");
    puts("\t    5--统计当天就诊的患者情况\n");
    puts("\t    6--结束程序    \n");

}



void guahao()   
{

    PA p[100];
    int i;
    FILE *fp;
    system("cls");
    fp=fopen("挂号序列.txt","a+");
    puts("您正在进行挂号操作!(请依次输入您的姓名、年龄、性别、挂号编号(中间空格隔开,按回车键确认!))");
    scanf("%s%d%s%d",p[i].name,&p[i].age,p[i].sex, &p[i].num);
    fprintf(fp,"\n%s\t%d\t%s\t%d",p[i].name,p[i].age,p[i].sex,p[i].num);
    fclose(fp);
    getchar();

}
void jiaohao(int j)   
{
    PA p[100];
    FILE *fp,*q,*fq;
    int i,n,k=0;
    fp=fopen("挂号序列.txt","r+");
    i=0;
    while(!feof(fp))
    {
        fscanf(fp,"%s%d%s%d",p[i].name,&p[i].age,p[i].sex, &p[i].num);
        i++;
    }
    k=i;
    fclose(fp);
    system("cls");
if(j==0)
    {
    puts("\t当前叫的号是:\n");
    printf("\n%s\t%d\t%s\t%d",p[0].name,p[0].age,p[0].sex,p[0].num);
    fclose(fp);
    q=fopen("删除后患者序列.txt","w+");
    for(i=1;i<k;i++)
          fprintf(q,"%s\t%d\t%s\t%d\n",p[i].name,p[i].age,p[i].sex,p[i].num);
    fclose(q);   
    }
    else if(j<=k)
    {
        i=0;
        q=fopen ("删除后患者序列.txt","r+");        
        while(!feof(q))
        {
        fscanf(q,"%s%d%s%d",p[i].name,&p[i].age,p[i].sex, &p[i].num);
        i++;
        }
    n=i-1;
    system("cls");
    puts("\t当前叫的号是:\n");
        printf("\n%s\t%d\t%s\t%d",p[0].name,p[0].age,p[0].sex,p[0].num);
    fq=fopen("删除后患者序列.txt","w+");
    for(i=1;i<n;i++)
          fprintf(fq,"%s\t%d\t%s\t%d%s\n",p[i].name,p[i].age,p[i].sex,p[i].num,'\0');
    fclose(q);
    fclose(fq);   
    }
     else
        puts("\n\n\t所以病人都已叫号!");
}



void zhenshi()   
{
    FILE *fp;
    PA p[100];
    int i,n;
    system("cls");
    fp=fopen ("挂号序列.txt","r+");
    i=0;
    while(!feof(fp))
    {
        fscanf(fp,"%s%d%s%d",p[i].name,&p[i].age,p[i].sex, &p[i].num);
        i++;
    }
    n=i;
    for(i=0;i<n;i++)
    {
        if(p[i].age>=35)
            strcpy(p[i].room,"第一诊室");
        else if(strcmp(p[i].sex,"男")==0)
            strcpy(p[i].room,"第二诊室");
        else if(strcmp(p[i].sex,"女")==0)
            strcpy(p[i].room,"第三诊室");
    }    fclose(fp);

    puts("挂号病人的诊室信息如下:\n");
    fp=fopen ("诊室分配.txt","w+");
    for(i=0;i<n;i++)
    {
        printf("%s\t%s\t%d\t%s\t%d\n",p[i].room,p[i].name,p[i].age,p[i].sex, p[i].num);
        fprintf(fp,"%s\t%s\t%d\t%s\t%d\n",p[i].room,p[i].name,p[i].age,p[i].sex, p[i].num);
    }

    fclose(fp);
}


void xinxi()   
{
    FILE *fp;
    int i,n,x=0,y=0,z=0;
    PA p[100];
    system("cls");
    fp=fopen ("诊室分配.txt","r+");
    i=0;
    while(!feof(fp))
    {
        fscanf(fp,"%s%s%d%s%d",p[i].room,p[i].name,&p[i].age,p[i].sex ,&p[i].num);
        i++;
    }
    n=i;
    puts("\n\t在第一诊室就诊病人的队列信息:");
    for(i=0;i<n;i++)
    {
        if(strcmp(p[i].room,"第一诊室")==0)   
        {
            printf("\n%s\t%s\t%d\t%s\t%d\n",p[i].room,p[i].name,p[i].age,p[i].sex, p[i].num);
            x++;
        }

    }
    if(x==0)
            puts("\n\t没有病人在该诊室就诊!");
    puts("\n\t在第二诊室就诊病人的队列信息");
    for(i=0;i<n;i++)
{
        if(strcmp(p[i].room,"第二诊室")==0)   
        {
            printf("\n%s\t%s\t%d\t%s\t%d\n",p[i].room,p[i].name,p[i].age,p[i].sex, p[i].num);
            y++;        }
    }
    if(y==0)
            puts("\n\t没有病人在该诊室就诊!");
    puts("\n\t在第三诊室就诊病人的队列信息");
    for(i=0;i<n;i++)
    {
        if(strcmp(p[i].room,"第三诊室")==0)   
        {
            printf("\n%s\t%s\t%d\t%s\t%d\n",p[i].room,p[i].name,p[i].age,p[i].sex, p[i].num);
            z++;
    }
    }
    if(z==0)
            puts("\n\t没有病人在该诊室就诊!");
    fclose(fp);
}


void qingkuang()   
{
    FILE *fp;
    int i,n,a,b,m=0,x=0,y=0;
    PA p[100];
    char choice;

    system("cls");
    fp=fopen ("诊室分配.txt","r+");
    i=0;
    while(!feof(fp))
    {
        fscanf(fp,"%s%s%d%s%d",p[i].room,p[i].name,&p[i].age,p[i].sex ,&p[i].num);
        i++;
    }
    n=i;
    system("cls");
    puts("      1---不同性别的患者\n");
    puts("      2---不同年龄的患者");
    choice=getch();    if(choice=='1')
    {
      system("cls");
          puts("\n\n男性患者有:\n");
          for(i=0;i<n;i++)
          {
              if(strcmp(p[i].sex,"男")==0)
              {
                  printf("%s\t%s\t%d\t%s\t%d\n",p[i].room,p[i].name,p[i].age,p[i].sex, p[i].num);
                  x++;
              }
          }
          if(x==0)
              puts("\t目前没有男性患者!");

          puts("\n\n女性患者有:\n");
          for(i=0;i<n;i++)
          {
              if(strcmp(p[i].sex,"女")==0)
              {
                  printf("%s\t%s\t%d\t%s\t%d\n",p[i].room,p[i].name,p[i].age,p[i].sex, p[i].num);
                  y++;
              }
          }
          if(y==0)
              puts("\t目前没有女性患者!");
     }

    if(choice=='2')
    {
      system("cls");
      puts("请输入要查询的年龄段:(请输入下限和上限,中间一空格隔开!)");
      scanf("%d%d",&a,&b);
      for(i=0;i<n;i++)
      {
          if((p[i].age>a)&&(p[i].age<b))
          {
              printf("%s\t%s\t%d\t%s\t%d\n",p[i].room,p[i].name,p[i].age,p[i].sex, p[i].num);
              m++;
          }
      }
      if(m==0)
          puts("\t该年龄段没有患者!");
      getchar();
    }
}
搜索更多相关主题的帖子: include choice system 
2013-06-28 12:02
VRML_0504
Rank: 2
等 级:论坛游民
威 望:1
帖 子:23
专家分:81
注 册:2013-6-7
收藏
得分:10 
声明变量未赋值
2013-06-28 12:28
快速回复:磁盘文件里出现 烫烫烫烫烫烫 怎么回事啊
数据加载中...
 
   



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

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