| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1041 人关注过本帖
标题:C++输入读取问题
只看楼主 加入收藏
嘟嘟嘟嘟
Rank: 2
等 级:论坛游民
帖 子:3
专家分:15
注 册:2018-6-5
收藏
 问题点数:0 回复次数:4 
C++输入读取问题
#include<iostream>
using namespace std;
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
FILE *fp;                 
struct student
{ string name;
string yisheng;
double zhenfei;
double yaofei;
double fee;

}a[80];
main(){ void write();
void read();
 cout<<"输入信息则输入1,读取信息输入2,退出输入0" ;int g;
    cin>>g;
    switch(g)
    { case 0:break;
    case 1:write();break;
      case 2:read();break;
      default : cout<<"无此选项"; break;
    }
   
    return 0;
}
void write()
  {

 
 if((fp=fopen("D:\\date3.txt","wb"))==NULL)
{
printf("文件打开失败\n");
exit(0);
}
    int j=1,b;
for(int i=0;j==1;i++)
    {
   
   
        cout<<"请输入你的名字"<<endl;
        cin>>a[i].name;
        cout<<"请输入你的医生,内科输入1,儿科输入2,产科输入3,全科输入4"<<endl;
  
     
            cin>>b;
        switch(b)
        {
        case 1: a[i].yisheng="内科";break;
        case 2 :a[i].yisheng="儿科";break;
        case 3: a[i].yisheng="产科";break;
        case 4 :a[i].yisheng="全科";break;
        
        }
        cout<<"请输入你的药费"<<endl;
        cin>>a[i].yaofei;
        cout<<"请输入你的诊费"<<endl;
        cin>>a[i].zhenfei;
        a[i].fee=a[i].yaofei+a[i].zhenfei;
        fwrite(&a[i],sizeof(struct student),1 ,fp);
        
                cout<<"是否继续输入,是则输入1,否则输入0  ";
        cin>>j;
        
   

}


        
fclose(fp); main();


    }
    void read(){int sway;int t,i=0;
        if((fp=fopen("D:\\date3.txt","rb"))==NULL)
        
{
printf("文件打开失败\n");
exit(0);
}for( i=0;feof(fp)==0;i++)
{fread(&a[i],sizeof(struct student),1,fp);}    //读取文件内容
   int x=1; string name;
while(x==1)   {  int t=1;                   //关闭文件

cout<<("请输入需要查询患者的姓名 ");
cin>>name;
for(int d=0;t!=0;d++)
{ if(a[d].name==name)
 
 

{

cout<<("你查找的信息:患者姓名为")
    <<a[d].name<<endl
    <<("你查找的信息:医生为")
    <<a[d].yisheng<<endl
    <<("你查找的信息:患者药费为")
    <<a[d].yaofei<<endl
    <<("你查找的信息:医生诊费为")
    <<a[d].zhenfei<<endl
    <<("你查找的信息:总费用为")
    <<a[d].fee<<endl;
    t=0;
    d=0;
}

}
 
cout<<("是否继续查询其他学生信息 0 否  1 是");

cin>>x;


} fclose(fp); main();}
    我打开程序时可以输入和读取内容,但关掉再次打开时不能读取上一次输入的内容,为什么,新手求教一下
   
搜索更多相关主题的帖子: 输入 cout int cin break 
2018-06-05 23:20
PandaHero
Rank: 3Rank: 3
等 级:论坛游民
威 望:7
帖 子:19
专家分:70
注 册:2016-3-29
收藏
得分:0 
文件打开模式错了,不是用"wt", 而是用"at"
2018-06-05 23:27
嘟嘟嘟嘟
Rank: 2
等 级:论坛游民
帖 子:3
专家分:15
注 册:2018-6-5
收藏
得分:0 
回复 2楼 PandaHero
我改了,还是不行呀,连最初在程序中输入和读取的功能都实现不了了
2018-06-05 23:32
PandaHero
Rank: 3Rank: 3
等 级:论坛游民
威 望:7
帖 子:19
专家分:70
注 册:2016-3-29
收藏
得分:0 
那我也无能为力了,我也是个菜鸟,看不懂代码。
2018-06-05 23:49
快速回复:C++输入读取问题
数据加载中...
 
   



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

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