作业4.21
#include<iostream>
#include<string>
using namespace std;
class Student
{
public:
Student(string name1,int number1,float score1);
void show();
void show_count_sum_ave();
private:
string name;
int number;
float score;
static int count;
static float sum;
static float ave;
};
Student::Student(string name1,int number1,float score1)
{
name=name1;
number=number1;
score=score1;
count++;
sum+=score;
ave=sum/count;
}
void Student::show()
{
cout<<"name:"<<name<<endl;
cout<<"number:"<<number<<endl;
cout<<"score:"<<score<<endl;}
void Student::show_count_sum_ave()
{
cout<<"count:"<<count<<endl;
cout<<"sum:"<<sum<<endl;
cout<<"ave:"<<ave<<endl;
}
int Student::count=0;
float Student::sum=0.0;
float Student::ave=0.0;
int main()
{Student stu1("wu",26,90);
stu1.show();
stu1.show_count_sum_ave();
Student stu2("chen",4,88);
stu2.show();
stu2.show_count_sum_ave();
Student stu3("zhang",31,89.0);
stu3.show();
stu3.show_count_sum_ave();
return 0;
}
作业4.22
<pre class="cpp" name="code">#include <iostream>
#include <cmath>
using namespace std;
class Point
{
public:
Point(float x_, float y_):x(x_),y(y_){}
void showPoint()
{cout << "(x,y)=(" <<x << "," << y << ")" << endl;}
friend float dist_(Point &, Point &);
private:
float x;
float y;
};
float dist_(Point & A, Point & B)
{
return sqrt((A.x-B.x)*(A.x-B.x)+(A.y-B.y)*(A.y-B.y));
}
int main()
{
Point a(1.0, 2);
Point b(1.0, 3);
cout << "a点与b点间的距离是:" << dist_(a, b) <<endl;
a.showPoint();
b.showPoint();
return 0;
}