当前位置:文档之家› C++实验报告 类和对象(2)

C++实验报告 类和对象(2)

销售员号(num)
销售件数(quantity)
销售单价(price)
101
5
23.5
102
12
24.56
103
100
21.5
请编程序,计算出当日此商品的总销售款sum以及每件商品的平均售价。要求用静态数据成员和静态成员函数。
(3)有以下程序:
请读者分析和运行此程序,注意友元函数Time::display的作用。将程序中的display函数不放在Time类中,而作为类外的普通函数,然后分别在Time和Date两个类的对象的私有数据,输出年、月、日和时、分、秒。
static float average();
static void display();
void total();
private:
static double discount;
static double sum;
static int n;
int num;
float price;
};
salesman::salesman(int a,float b)
class Date;
class Time
{
public:
Time(int ,int,int);
friend void display(const Date &da,const Time &);
private:
int hour;
int minute;
int sec;
};
class Date
{public:
void display(){cout<<num<<" "<<score<<endl;}
void fun(Student&){cout<<"like playing basketball"<<endl;}
private:
int num;
float score;
};
int main()
{
Student stud(101,78.5);
sal1.total();
salesman sal2(12,24.56);
sal2.total();
salesman sal3(100,21.5);
sal3.total();
salesman::display();
return 0;
}
(3)
#include<iostream>
using namespace std;
一、实验题目:实验九类和对象(二)
二、实验环境:
三、实验目的
(1)进一步加深对类和对象的理解。
(2)掌握类的构造函数和折购函数的概念和使用方法。
(3)掌握对对象数组,对象的指针及其使用方法。
(4)掌握友元的概念和使用。
(5)了解类模板的使用方法。
四、实验内容
(1)有以下程序:
1、阅读此程序,分析其执行过程,然后上机运行,对比输出结果。
{
num=a;
price=b;
}
void salesman::total()
{
if(num>=10)
price=price*0.98;
sum+=num*price*discount;
n+=num;
}
float salesman::average()
{
return(sum/n);
}
double salesman::discount=0.98;
福建师范大学实验报告
课程:C++实验名称:类和对象二第 1页 共 5页
系 别:实 验 日 期 年 月 日
专业班级:组别_____________ 实 验 报 告 日 期 年 月 日
姓 名:学号:报 告 退 发 ( 订正 、 重做 )
同 组 人_________________________________ 教 师 审 批 签 字
{
month=m;
day=d;
year=y;
}
int main()
{void display(const Date&,const Time &);
Time t1(10,13,56);
Date d1(12,25,2004);
disp
Date(int,int,int);
friend void display(const Date &,const Time &);
private:
int month;
int day;
int year;
};
Time::Time(int h,int m,int s)
{
hour=h;
minute=m;
sec=s;
int salesman::n=0;
double salesman::sum=0;
void salesman::display()
{
cout<<"总销售款为"<<sum<<endl<<"平均售价为"<<salesman::average()<<endl;
}
int main()
{
salesman sal1(5,23.5);
}
void display(const Date &da,const Time &ti)
{
cout<<da.month<<"/"<<da.day<<"/"<<da.year<<endl;
cout<<ti.hour<<":"<<ti.minute<<":"<<ti.sec<<endl;
}
Date::Date(int m,int d,int y)
修改后上机调试和运行。

五、实验步骤与结果
(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;}
2、修改上面的程序,增加一个fun函数,改写main函数,在main函数中调用fun函数,在fun函数中使用对象的引用(Student&)作为形参。
(2)商店销售某一商品,商店每天公布统一的折扣(discount)。同时允许销售人员在销售时灵活掌握售价(price),在此基础上,对一次购10件以上者,还可以享受9.8折优惠。现已知当天3个销售员销售情况为:
stud.display();
stud.change(101,80.5);
stud.display();
stud.fun(stud);
return 0;
}
(2)#include <iostream>
using namespace std;
class salesman
{
public:
salesman(int,float);
相关主题