第三章

第四题

#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;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值