so code 2021-04-28 18:35 采纳率: 66.7%
浏览 16

判断循环不会写,求助。

#include<iostream>
#include<fstream>
#include<windows.h>

using namespace std;
#define file_name"结构.txt"
struct information
{
    string name;
    string uid;
    char gender;
};
struct information Information;//两个information有啥区别和作用

bool InitInfo();
bool ReadInfo();
void RecordInfo();
bool WriteInfo(information *Info,int i);//这样一段的作用

int main()
{
    int i;
    InitInfo();
    while(1)
    {
        cout<<"请选择要进行的操作:\n";
        cout<<"1.打印数据到屏幕\n";
        cout<<"2.录入数据\n";
        cout<<"3.退出程序\n";
        cin>>i;
        switch(i)
        {
            case 1:
                    if(ReadInfo())
                    {
                        cout<<"成功读取文件\n";
                    }
                    else
                    {
                        cout<<"读取文件失败\n";
                    }
                    break;
            case 2:
                    RecordInfo();
                    break;
            case 3:
                    cout<<"输入值非法,请重新输入数字:\n";                
        }
    }
    cout<<"初始化失败\n";
    return 0;
}

bool InitInfo()
{
    Information.name="jincheng";
    Information.uid="1998821";
    Information.gender='m';
    WriteInfo(&Information,0);
}

bool ReadInfo()
{
  ifstream in;
  in.open(file_name,ios::in);
  string x;
  while(getline(in,x))
  {
      cout<<x;
      cout<<'\n';
  }
  in.close();
}

void RecordInfo()
{
    cout<<"请输入姓名:\n";
    cin>>Information.name;
    cout<<"请输入ID:\n";
    cin>>Information.uid;
    cout<<"请输入性别:\n";
    cin>>Information.gender;
    WriteInfo(&Information,1);
}

bool WriteInfo(information *Info,int i)
{
    ofstream out;
    if(i==1)
    {
        out.open(file_name,ios::app);
    }
    else
    {
        out.open(file_name,ios::out);
    }

    out<<(*Info).name<<" ";
    out<<(*Info).uid<<" ";
    out<<(*Info).gender<<" \n";
    out.close();

}

这是我仿写的一个数组存储函数,但是不够健壮,我想加一个判断性别是否为mMfF,若不是则提示输入非法重新输入直到正确才录入,但是判断是否为mMfF的函数我会写,判断完之后提示重新输入和存储的代码我写出来没报错也无法运行,请教一下该怎么写。

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-09-07 17:35
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 以帮助更多的人 ^-^
    评论

报告相同问题?

悬赏问题

  • ¥15 用Matlab实现图中的光线追迹
  • ¥15 联想笔记本开机出现系统更新界面
  • ¥15 各位帮帮我 我不想重做系统
  • ¥30 微信小程序蓝牙数据透传
  • ¥15 加氢站氢负荷数据集来源
  • ¥15 umi接入sentry遇到问题
  • ¥15 HBuilderX打包H5网页,扫码模块无法使用
  • ¥15 Javascript跳转页面后,无法执行后面代码,如何解决?
  • ¥15 echarts绘制图表
  • ¥15 请教两个关于高德地图定位不准的技术问题