/*
* 文件名称: lulalula
* 作 者: 郝荣雅
* 完成日期: 2016 年 3 月 28日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:
* 输入描述:
* 问题描述:
* 程序输出:
* 问题分析:
* 算法设计:
*/
一编写程序:
#include<iostream>
#include<string>
//<cstring> <string.h>
using namespace std;
class Stu
{
public:
void setStudent(string n1,float c1,float m1);
void average1();
void Sum1();
void show();
void getstudent();
void setName(string s);
string showName()
{
return name;
}
private:
string name;
float chinese;
float math;
float average;
float Sum;
};
void Stu::setName(string s)
{
name=s;
}
void Stu::setStudent(string n1,float c1,float m1)
{ name=n1;chinese=c1;math=m1;
}
void Stu::average1()
{ average=(chinese+math)/2;
cout<<"average:"<< average<<" "; }
void Stu::Sum1()
{ Sum=chinese+math;
cout<<"total:"<<Sum<<endl;}
void Stu::show()
{
cout<<"name: "<<name<<" chinese: "<<chinese<<" math: "<<math<<endl;
}
void main()
{
Stu s1,s2,s3;
s1.setStudent("Lin daiyu",98,96);
s1.show();
s1.average1();
s1.Sum1();
s2.setStudent("Jia baoyu",90,88);
s2.show();
s2.average1();
s2.Sum1();
s3.setStudent("Xue baochai",98,96);
s3.show();
s3.average1();
s3.Sum1();
s2.setName("Jia baoyu");
cout<<"name:"<<s2.showName()<<endl;
s2.average1();
s2.Sum1();
}
二运行结果:
:
三心得体会:
这是我第一次编写这种类型的,所以。。出现了很多错误,让我一度放弃,也是因为C语言学得不好,有很多也是学长帮助写出来的,基础没有打好,平时打的代码也是太少
四知识点总结:
首先,函数名以及设置的变量不能相同,其次,名字用的是字符串,用的是string 不是char ,在头文件里,应加上<string>,
在下面的主函数里,有 名字,语文成绩,数学成绩,三个参数,所以上面的setStudent()里应该相互对应,平均值以及总和的计算不能作为参数在函数里面。
在主函数里,对于对象s1.s2.s3应该把对s1的操作写在一起,不然会发生覆盖,出现报错。