1135人加入学习
(5人评价)
C++编程系列 第二季函数和类

制作于2018.4.2

价格 免费
课程还未发布,不允许加入和购买

头文件中常包含的内容:

1.函数原型

2.使用#define或者const定义的符号常量

3.结构声明

4.类声明

5.模版声明

6.内联函数

[展开全文]

完成程序:药品物资管理

要求:1.利用结构体来存储目前用用的药物的名称,种类,数量,买入价格,卖出价格。

2.利用枚举来设置药物的种类(回复mp和回复hp)。

3.编写函数来控制药物的买入和卖出,卖出价格为买入价格的3/4。

4.编写函数来显示拥有的药物和剩余钱数。

5.通过输入数字来控制函数调用。

6.实现分离式编译。

头文件game.h

#pragma once
#ifndef GAME_H_
#define GAME_H_
#include "string"
using namespace std;
enum kind {hp,mp};
struct Bag
{
	string name;
	kind kin;
	int number;
	float buy;
	float sell;
};
int Buyin(Bag &b1,float res);
int Sellout(Bag &b1,float res);
void Display(Bag b1,int i);


#endif // !GAME_H_



game.cpp

#include <iostream>
#include "stdio.h"
#include "string"
#include "game.h"
int Buyin(Bag &b1, float res)
{
	float i = res;
	if (i < b1.buy)
	{
		cout << "金钱不足" << endl;
	}
	else
	{
		b1.number += 1;
		i -= b1.buy;
		cout << "购买一瓶药" << endl;
	}
	return i;
}
int Sellout(Bag &b1, float res)
{
	int i = res;
	if (b1.number< 0)
	{
		cout << "数量不足" << endl;
	}
	else
	{
		b1.number -= 1;
		i+= b1.sell;
		cout << "卖出一瓶药" << endl;
	}
	return i;
}
void Display(Bag b1,int i)
{
	if(i==0)
	cout << "名称:" << b1.name << "  " << "种类:" << "hp" << "  " << "数量:" << b1.number << "  " << "购买价格" << b1.buy << "  " << "出售价格" << b1.sell<<endl;
	else
	cout << "名称:" << b1.name << "  " << "种类:" << "mp" << "  " << "数量:" << b1.number << "  " << "购买价格" << b1.buy << "  " << "出售价格" << b1.sell << endl;

}

主文件

#include <iostream>
#include "stdio.h"
#include "string"
#include "game.h"
using namespace std;
int main()
{
	int select;
	float res = 1000;
	Bag bagh{ "hp药水",kind(0),5,100,75 };
	Bag bagm{ "mp药水",kind(1),5,100,75 };
	do {
		cout << "请输入对应指令" << endl << "1.购买hp药 2.卖出hp药 3.购买mp药 4.卖出mp药 5.显示背包 6.退出" << endl;
		cin >> select;
		switch (select)
		{
		case 1:
			res=Buyin(bagh, res);
			break;
		case 2:
			res = Sellout(bagh, res);
			break;
		case 3:
			res = Buyin(bagh, res);
			break;
		case 4:
			res = Sellout(bagm, res);
			break;
		case 5:
		{
			Display(bagh, bagh.kin);
			Display(bagm, bagm.kin);
			cout << "剩余金钱为:" << res << endl;
		}
		break;
		case 6:
			break;
		default:
			break;
		}
	}
	while (select != 6);


}

 

[展开全文]

授课教师

SIKI学院老师

课程特色

下载资料(1)
视频(43)