高分问两道C++题,谢谢

来源:百度知道 编辑:UC知道 时间:2024/06/30 08:40:46
第一题:
学生的信息由学号、姓名和成绩三部分组成,某班学生的信息已经存入二进制文件stud中。以下的程序完成如下功能:将该班学生的信息读进来进行统计,如某同学的成绩不及格,则写入文件failure中。请仔细阅读程序,在每一空白处填入一条语句或一个表达式或一个数据类型,使之成为一个完整的程序。
#include<fstream>
struct student{
int num;
char name[32];
float fScore;
};
using namespace std;
int main(){
____1______input("stud",____2_____);
ofstream output("failure",____3________);
student stu;
while(ture){
input.read((char *)&stu,sizeof(stu));
if(input.eof(() break;
if(stu.fScore<60)
_______4_______
}
input.close;_____5_____
return 0;
}

第二题:
下面给出的是一个程序的三个文件:Main.cpp、Complex.h和Complex.cpp。文件Complex.h中定义类Complex,文件Complex.cpp中实现类Complex的成员函数Main.cpp包含了main()函数,使用类Complex。给出的这三个文件不完整,请仔细阅读、分析已给出的部分,然后根据题意补充Complex.h和Complex.cpp的内容,使这三个文件能构成一个完整的程序。要求:1成员变量定义成私有的。2不增加题目中没用到的类成员。

第一部分
//文件Main.cpp
#include <iostream>
#include "Complex.h"
using na

第一题:

1.ifstream
2.ios_base::in
3.ios_base::out
4.output.write((char *)&stu,sizeof(stu));
5.output.close();

第二题:

第二部分
//文件Complex.h
#include <iostream>
class Complex{
//在这里添加成员变量的定义
private:
float real;
float image;
public:
Complex (float r=0,float i=0);
//在下面添加重载运算符对应的函数声明
friend Complex operator+(Complex &lhs, Complex &rhs);
friend ostream& operator<<(ostream& os,Complex &c);

第三部分
//文件Complex.cpp
#include <iostream>
#include "Complex.h"
using namespace std;
Complex::Complex(float r,float i)
{real=r;image=i;}
//在下面添加重载运算符对应的函数的定义
Complex operator+(Complex &lhs, Complex &rhs);
{
Complex c;
c.real = lhs.real+rhs.real;
c.image = lhs.image+rhs.image;
return c;
}
ostream& operator<<(ostream& os,Complex &c)
{
os <&l