学生成绩管理系统调试时,只能录入学生成绩,查找学生成绩时显示打开文件失败

img


学生成绩管理系统调试时,只能录入学生成绩,查找学生成绩时显示打开文件失败

出现打开文件失败的问题可能是由于以下几个原因引起的:

  1. 文件路径错误:请确保你输入的文件路径是正确的,包括文件名和文件后缀。

  2. 文件不存在:如果你指定的文件路径是正确的,但文件不存在,那么打开文件就会失败。请检查文件是否存在。

  3. 文件权限问题:如果你没有足够的权限来读取或写入文件,那么打开文件也会失败。请确保你有足够的权限来操作该文件。

  4. 文件被其他程序占用:如果文件正在被其他程序占用,那么你可能无法打开文件。请关闭其他程序或者等待其他程序释放对文件的占用。

  5. 文件损坏:如果文件已经损坏或者格式不正确,那么打开文件也会失败。请检查文件的完整性并尝试修复或重新创建文件。

请根据以上可能的原因逐一检查并解决问题,如果问题仍然存在,请提供更多的详细信息以便我们能够更好地帮助你解决问题。

  • 你可以看下这个问题的回答https://ask.csdn.net/questions/7724632
  • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:输入学生的学号及语文、数学、英语成绩, 输出学生各科成绩及率均成绩信息
  • 除此之外, 这篇博客: 简单的学生成绩管理系统中的 简单的学生成绩管理系统 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 写一个科目类,包含科目名称,科目分数2个数据成员,一个衡量是否及格的成员函数,用其构造函数为科目对象赋值。写一个学生类,含学号,姓名2个数据成员,以及一个成绩对象指针成员(指向语数外三门成绩对象组成的数组),在学生类的构造函数中为成绩对象指针成员赋值(申请空间),在学生成绩展示成员函数中,将其三门成绩逐一展示并说明是否及格。主函数中只需要定义一个学生对象,进行成绩登记及演示

    #include<iostream>
    #include<cstring>
    using namespace std;
    class Subjict{ 
    string Sname; 
    int scure;
    public: 
    Subjict(); 
    void putt();
    };
    Subjict::Subjict()
    {   
     cout << "请输入科目名字:";   
     cin >> Sname;  
     cout <<"请输入" << Sname << "成绩:" ;
     cin >> scure;
         }
    void Subjict::putt()
    {
      cout << Sname<<scure;  
      if (scure < 60)   cout << " 不及格 "<<endl;        else   cout << " 及格 "<<endl;  
    }
      class Student
      {
       long int xuehao; 
       string name; Subjict *p;
       public: 
       Student(); 
       ~Student(); 
       void put();
       };
       Student::Student()
       { name = "张三某";
        xuehao = 2019001; 
        p = new Subjict[3];
        }
        Student::~Student()
        { 
        delete[] p;
        }
        void Student::put()
        { 
        cout << "学号:" << xuehao<<",姓名:" << name <<",成绩如下:"<< endl; 
        p[0].putt(); 
        p[1].putt(); 
        p[2].putt();
        }
        int main()
        { 
        Student b; 
        b.put(); 
        return 0;
        }
    

    在这里插入图片描述

  • 您还可以看一下 CSDN讲师老师的机器学习之无监督学习三大聚类算法应用实战课程中的 理解监督学习,无监督学习小节, 巩固相关知识点