课堂例题

26 阅读1分钟

某电影院根据观众的年龄、观影时间和是否为会员,制定了不同的票价规则,具体如下:

  1. 基础票价:白天场(12:00 前)50 元,晚间场(12:00 及以后)80 元。
  2. 年龄优惠:
  • 儿童(6 岁及以下):基础票价打 5 折;
  • 老人(60 岁及以上):基础票价打 7 折;
  • 其他年龄(7-59 岁):无年龄优惠。
  1. 会员折扣:会员在上述优惠后(若有)再打 9 折(会员身份与年龄优惠可叠加)。
  2. 特殊规则:儿童和老人无论是否为会员,晚间场额外减 10 元(此优惠在所有折扣后生效)。
#include <stdio.h>
int main() {
    // 选择
    int age = 0;
    printf("输入年龄:");
    scanf("%d", &age);

    int time = 0;
    printf("输入时间:");
    scanf("%d", &time);

    int isVip = 0;
    printf("输入是否会员(1:是,0:否):");
    scanf("%d", &isVip);

    printf("您的年龄是%d,看电影的时间是:%d点,是否会员:%d \n", age, time, isVip);
    
    double price=0;
	//基础票价
	if(time<12){
		price=50;
	} else{
		price=80;
}
    //检查是否需要年龄优惠
      if(age <= 6) {
    price *= 0.5;
} else if(age >= 60) {
    price *= 0.7;
} else {
    price *= 1;
}
	
	//检查是否需要会员折扣
	if(isVip) {
    price *= 0.9;
}
	
	//检查是否满足特殊规则  (晚间场) &&(小孩或者老人) 
	if( (age <=6 || age >=60)&& time>=12 ){
    price -= 10;
}
printf("您需要付费:%f元", price);
}	

编译结果

image.png