⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 salary3.cpp

📁 高永强 全C编程源码 清华大学出版社 2002年六月第一版
💻 CPP
字号:
//这个程序在本书所带软盘中。文件名为SALARY3.CPP
//这个程序利用类和私有成员变量来计算雇员的星期工资。

#include <iostream.h>
#include <iomanip.h>
#include <string.h>				//支持字符串操作
#include <stdlib.h>				//支持库子程序exit()

class salary {					//定义类salary
	private:
		// 定义私有成员变量和私有成员子程序
		float rate;
		float hours;
		float pay;
		void compute(void);		//私有成员子程序

	public:
		void modify(char *password, float new_rate);
		void get_data(float work_hours);
		void display(void);
};

/*********** 编写私有成员子程序 compute() *******/
void salary::compute(void)
{
	if ((int)rate == 0)			//用户没有更改小时工资
		rate = 6.0;

	if (hours > 40)
		pay = 40 * rate + (hours - 40) * rate * 1.5;
	else
		pay = hours * rate;
}

/********** 编写成员子程序 modify() **************/
void salary::modify(char *password, float new_rate)
{
	if (strcmp("success", password) == 0)	//如果相等
		rate = new_rate;
	else
	{
		cout << "密码输入错误!" << endl;
		cout << "程序运行中断..." << endl;
		exit(1);
	}
}

/******* 编写成员子程序 get_get_data() *************/
void salary::get_data(float work_hours)
{
	hours = work_hours;			//将输入变量赋予私有成员变量
	compute();					//调用私有成员子程序
}

/********* 编写成员子程序 display() ************/
void salary::display(void)
{
	cout << setprecision(2) << setiosflags(ios::fixed);
	cout << "星期工资是: $" << pay << endl;
}

void main(void)					//主程序
{
	salary my_pay, your_pay;	//定义两个对象

	my_pay.get_data(45);		//调用对象my_pay的成员子程序
	my_pay.display();			//调用对象my_pay的成员子程序

	your_pay.modify("success", 7.90);
	your_pay.get_data(45);
	your_pay.display();

	your_pay.modify("aaa", 99999999.99);	//图谋不轨
	your_pay.get_data(45);
	your_pay.display();
}

/*这个程序运行后将显示如下输出结果:
星期工资是: $285.00
星期工资是: $375.25
密码输入错误!
程序运行中断...
*/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -