用C语言编写一个代码要求利用抽象类编写一个程序实现公交车卡售票管理。当输入为“老年卡”、“学生卡”和“普通卡”时显示不同的卡类,及购票金额(“老年卡”购票金额=原价*50%、“学生卡”购票金额=原价*60%、“普通卡”购票金额=原价*95%)。 具体实现步骤: 第一步:建立公交卡(boardingcard)的结构
时间: 2023-02-16 10:56:57 浏览: 148
利用抽象类编写实现公交卡类售票管理程序。当输入为“老年卡”,“学生卡”,“普通卡”时,显示不同的卡类以及购票金额
为了使用抽象类来实现公交车卡售票管理,您需要先定义一个抽象类,该类包含一个抽象方法,该方法用于计算购票金额。您还需要定义三个类分别表示三种不同的公交卡(老年卡、学生卡、普通卡),这些类都继承自抽象类,并重写抽象方法来实现自己的计算购票金额的逻辑。
具体实现步骤如下:
1. 定义抽象类 boardingcard,其中包含一个抽象方法 calcPrice,用于计算购票金额。
```
abstract class boardingcard {
abstract float calcPrice(float originalPrice);
}
```
2. 定义三个类,分别表示老年卡、学生卡、普通卡。这些类都继承自抽象类 boardingcard,并重写 calcPrice 方法来实现自己的计算购票金额的逻辑。
```
class elderlycard extends boardingcard {
@Override
float calcPrice(float originalPrice) {
return originalPrice * 0.5;
}
}
class studentcard extends boardingcard {
@Override
float calcPrice(float originalPrice) {
return originalPrice * 0.6;
}
}
class normalcard extends boardingcard {
@Override
float calcPrice(float originalPrice) {
return originalPrice * 0.95;
}
}
```
3. 在 main 函数中,读入用户输入的公交卡类型,根据不同的公交卡类型实例化不同的公交卡对象,然后调用 calcPrice 方法计算购
阅读全文