问题及代码
main.cpp
/*
* Copyright (c) 2015, 烟台大学计算机学院
* All rights reserved.
* 文件名称:test.cpp
* 作 者:辛彬
* 完成日期:2015 年 3 月 22 日
* 版 本 号:v1.0
*
* 问题描述:下面提供了类Stu的数据成员定义,和用于测试的main函数,参考如图的运行结果,完成类的定义,并用多文件形式组织程序。
* 输入描述:没有。
* 程序输出:成绩。
*/
#include<iostream>
#include"Stu.h"
using namespace std;
int main()
{
Stu s1,s2;
s1.setStudent("Lin daiyu", 98, 96); //对象置初值
s2.setStudent("Jia baoyu", 90, 88); //对象置初值
s1.show();//打印信息
s2.show();//打印信息
s1.setName("xue baochai");//重新置p1对象的名字
s1.show();
cout<<"s1.Name: "<<s1.getName()<<endl;//打印对象的名字
cout<<"s1.average: "<<s1.average()<<endl;//打印对象的成绩
return 0;
}
Stu.h
#ifndef STU_H_INCLUDED
#define STU_H_INCLUDED
#include <iostream>
using namespace std;
#include <string.h>
class Stu
{
private:
string name; //学生姓名
float chinese; //语文成绩
float math; //数学成绩
//接下去写
public:
void setStudent(string n,float c,float m);
void show();
void setName(string n);
string getName();
float average();
};
#endif // STU_H_INCLUDED
Stu.cpp
#include"Stu.h"
void Stu::setStudent(string n,float c,float m)
{
name=n;
chinese=c;
math=m;
}
void Stu::show()
{
cout<<"Name:"<<name<<endl;
cout<<"Score:"<<chinese<<'\t'<<math<<endl;
cout<<"average:"<<(chinese+math)/2<<'\t'<<"Sum:"<<chinese+math<<endl;
cout<<endl;
}
void Stu::setName(string n)
{
name=n;
}
string Stu::getName()
{
return name;
}
float Stu::average()
{
return (chinese+math)/2;
}
运行结果: