C++ 音像制品(类与对象)

题目描述
某商店出租音像制品,制品信息包括:类型、名称、租金单价、状态。
其中类型用单个数字表示,对应关系为:1-黑胶片,2-CD,3-VCD,4-DVD 名称是字符串,存储制品的名称信息 租金单价表示每天租金价格
状态用单个数字表示,0是未出租,1是已出租
商店提供业务操作包括

  1. 初始化(使用构造方法),从键盘输入音像制品的信息,并设置到对象中
  2. 查询Print,输出音像制品的信息
  3. 计算租金Fee,参数是租借的天数,输出租金总价,如果未出租则提示,具体输出信息看示范
    请定义音像制品类,并创建相应的对象来完成操作 题目涉及的数值均用整数处理
    输入
    第一行输入n表示有n个音像制品 每个音像制品对应两行输入
    一行输入一个音像制品的多个参数,具体为:类型、名称、租金单价、状态
    一行输入操作命令,如果输入为0表示查询操作,非0则表示查询并且计算租金费用,租用天数就是这个非0值 依次输入2n行
    输出
    根据每个音像制品的操作命令,调用相应的操作,然后输出相关结果 输出样式看示范。

样例输入
4
1 AAA 43 1 0
2 BBB 19 0 3
3 CCC 27 1 5
4 DDD 32 1 7
样例输出
黑胶片[AAA]已出租
CD[BBB]未出租
未产生租金
VCD[CCC]已出租
当前租金为135
DVD[DDD]已出租
当前租金为224

#include<iostream>
#include<string.h>
using namespace std;

class Audio{
	public:
		void Set_name(char *name){
 			A_name=name;
 		}
		void Set_price(int price){
			A_price=price;
		}
		void Set_state(int state){
			A_state=state;
		}
		void Print(int type,int order); 
	private:
		char A_type[4][50]={"黑胶片","CD","VCD","DVD"};//每种类型胶片的放入数组
		char *A_name;
		int A_price;
		int A_state;
};

void Audio::Print(int type,int order){
	if(order==0){//题目要求命令=0时,只查询是否出租
		if(A_state==0)
			cout<<A_type[type-1]<<"["<<A_name<<"]未出租"<<endl;//A_type[type-1]减1是因为数组从0开始的
		if(A_state!=0)
			cout<<A_type[type-1]<<"["<<A_name<<"]已出租"<<endl;
	}
	if(order!=0){//题目要求命令=1时,则还需要输出是否产生租金及产生多少租金
 		if(A_state==0)
			cout<<A_type[type-1]<<"["<<A_name<<"]未出租\n未产生租金"<<endl;
		else
			cout<<A_type[type-1]<<"["<<A_name<<"]已出租\n当前租金为"<<order*A_price<<endl;
	}
}

int main(){
	int n,type,price,state,order;//order是操作命令
	char name[50];
	Audio ccc;	
	cin>>n;
	for(int i=0;i<n;i++){
		cin>>type>>name>>price>>state>>order;
		ccc.Set_name(name);
		ccc.Set_price(price);
		ccc.Set_state(state);
		ccc.Print(type,order); 
	}
}

在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实验一 Java 语言基础 1 一. 实验目的 1 二.实验内容 1 三.源程序代码 1 四.实验结果截图 6 五.结果分析 7 实验二 面向对象程序设计 8 一.实验目的 8 二.实验内容 8 三.源程序代码 8 四.实验结果截图 12 五.结果分析 13 实验三、异常处理程序设计 14 一.实验目的 14 二.实验内容 14 三.源程序代码 14 四.实验结果 17 五.结果分析 18 实验四 图形用户界面程序设计 19 一.实验目的 19 二.实验内容: 19 三.源程序代码(核心代码) 19 四.程序设计思路 23 五.实验结果及分析 23 六.不足之处 26 实验五 多线程程序设计 27 一.实验目的 27 二.实验内容 27 三.源程序代码 27 四.实验结果截图 29 五.结果分析 30 实验六 输入输出流 31 一.实验目的 31 二.实验内容: 31 三.源程序代码 31 四.实验结果截图 36 五.结果分析 37 实验七 使用 TCP 协议的 Socket 网络程序设计 38 一.实验目的 38 二.实验内容 38 三.核心源代码 39 四.实验结果截图 43 五.结果分析 45 实验八 数据库应用 46 一.实验目的 46 二.实验内容 46 三.源程序代码 46 四.实验结果截图 48 五.结果分析 48 附录一:学生信息管理(针对实验四文件操作的改进) 49 一. 目前界面 49 二. 改进展示 50 三. 部分代码 53 四. 总结 54 附录二:多对多聊天室(实验七扩展) 55 一. 思路 55 二. 核心代码 55 三. 截屏展示 58 四. 实验分析 60

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值