第四题
#include <iostream>
using namespace std;
class Student
{public:
Student(int n,float s):xuehao(n),chengji(s){}
void display();
private:
int xuehao;
float chengji;
};
void Student::display()
{cout<<xuehao<<" "<<chengji<<endl;}
int main()
{Student stud[5]={
Student(1,87),Student(2,98),Student(3,92),
Student(4,100),Student(5,95)};
Student *p=stud;
for(int i=0;i<=2;p=p+2,i++)
p->display();
return 0;
}
第五题
#include <iostream>
using namespace std;
class Student
{public:
Student(int n,float s):xuehao(n),chengji(s){}
int xuehao;
float chengji;
};
void main()
{Student stud[5]={
Student(1,87),Student(2,98),Student(3,92),
Student(4,100),Student(5,95)};
void max(Student* );
Student *p=&stud[0];
max(p);
}
void max(Student *arr)
{float max_chengji=arr[0].chengji;
int k=0;
for(int i=1;i<5;i++)
if(arr[i].chengji>max_chengji) {max_chengji=arr[i].chengji;k=i;}
cout<<arr[k].xuehao<<" "<<max_chengji<<endl;
}
第七题
(1)
#include <iostream>
using namespace std;
class Student
{
public:
Student(int n,float s):num(n),score(s){}
void change(int n,float s)
{
num=n;
score=s;
}
//void display()
void display()const
{
cout<<num<<" "<<score<<endl;
}
private:
int num;
float score;
};
int main()
{
//Student stud(101,78.5);
const Student stud(101,78.5);
stud.display();
//stud.change(101,80.5);
//stud.display();
return 0;
}
(2)
#include <iostream>
using namespace std;
class Student
{
public:
Student(int n,float s):num(n),score(s){}
void change(int n,float s)const
{
num=n;
score=s;
}
void display()const
{
cout<<num<<" "<<score<<endl;
}
private:
mutable int num;
mutable float score;
};
int main()
{
const Student stud(101,78.5);
stud.display();
stud.change(103,90.5);
stud.display();
return 0;
}
(3)
#include <iostream>
using namespace std;
class Student
{
public:
Student(int n,float s):num(n),score(s){}
void change(int n,float s)
{
num=n;
score=s;
}
void display()
{
cout<<num<<" "<<score<<endl;
}
private:
int num;
float score;
};
int main()
{
Student stud(101,78.5);
Student *p=&stud;
p->display();
p->change(101,80.5);
p->display();
return 0;
}
(4)
#include <iostream>
using namespace std;
class Student
{
public:
Student(int n,float s):num(n),score(s){}
void change(int n,float s)const
{
num=n;
score=s;
}
void display()const
{
cout<<num<<" "<<score<<endl;
}
private:
mutable int num;
mutable float score;
};
int main()
{
const Student stud(101,78.5);
stud.display();
const Student *p = &stud;
p->change(101,80.5);
p->display();
return 0;
}
(5)
#include <iostream>
using namespace std;
class Student
{
public:
Student(int n,float s):num(n),score(s){}
void change(int n,float s)const
{
num=n;
score=s;
}
void display()const
{
cout<<num<<" "<<score<<endl;
}
private:
mutable int num;
mutable float score;
};
int main()
{
const Student stud(101,78.5);
stud.display();
const Student *p = &stud;
p->change(101,80.5);
p->display();
return 0;
}
第八题
#include <iostream>
using namespace std;
class Student
{
public:
Student(int n,float s):num(n),score(s){}
void change(int n,float s)
{
num=n;
score=s;
}
void display()
{
cout<<num<<" "<<score<<endl;
}
private:
int num;
float score;
};
int main()
{
Student stud(101,78.5);
void fun(Student &);
fun(stud);
return 0;
}
void fun(Student &stu)
{
stu.display();
stu.change(101,80.5);
stu.display();
}
第九题
#include <iostream>
using namespace std;
class Product
{
public:
Product(int n,int q,float p):num(n),quantity(q),price(p){}
void total();
static float average();
static void display();
private:
int num;
int quantity;
float price;
static float discount;
static float sum;
static int n;
};
void Product::total()
{
float rate=1.0;
if(quantity>10)
rate=rate*0.98;
sum=sum+quantity*price*rate*(1-discount);
n=n+quantity;
}
void Product::display()
{
cout<<sum<<endl;
cout<<average()<<endl;
}
float Product::average()
{
return (sum/n);
}
float Product::discount=0.05;
float Product::sum=0.0;
int Product::n=0;
int main()
{
Product prod[3]={Product(101,5,23.5),Product(102,12,24.56),Product(103,100,21.5)};
for(int i=0;i<3;i++)
prod[i].total();
Product::display();
return 0;
}
第十题
#include <iostream>
using namespace std;
class Date;
class Time
{public:
Time(int,int,int);
friend void display(const Date &,const Time &);
private:
int hour;
int minute;
int sec;
};
Time::Time(int h,int m,int s)
{hour=h;
minute=m;
sec=s;
}
class Date
{public:
Date(int,int,int);
friend void display(const Date &,const Time &);
private:
int month;
int day;
int year;
};
Date::Date(int m,int d,int y)
{month=m;
day=d;
year=y;
}
void display(const Date &d,const Time &t)
{
cout<<d.month<<"/"<<d.day<<"/"<<d.year<<endl;
cout<<t.hour<<":"<<t.minute<<":"<<t.sec<<endl;
}
int main()
{
Time t1(10,13,56);
Date d1(12,25,2004);
display(d1,t1);
return 0;
}