注册 登录
编程论坛 C语言论坛

求大神帮忙看一下(devc++),15—64的年龄段在淡季买票的单价是多少,用if-else嵌套

hahahahaha在 发布于 2020-11-21 17:30, 1302 次点击
#include <stdio.h>
int main()
{
    int m,a,p1=200;     //月份m,年龄a
    float p;    //单价p
    printf("请输入游览的月份:");
    scanf("%d",&m);
    printf("请输入游客的年龄:");
    scanf("%d",&a);
    if(m>=1&&m<=12)
    {
        if(m==11&&m==12&m>=1&m<=4)
        p=p1*0.8;
        else
        p=p1;   
    }
    if(a>=65)
    {
        p=0;
    }
    else if(a>0&&a<=14)
    {
        p=p1*0.5;
    }
    else if(a>14&&a<65)
    {
        p=p1;
    }
    printf("单价为%0.2f",p);   
    return 0;
}

题目
旅游景点为吸引游客,旺季和淡季门票价格不同,旺季为每年5到10月份,门票价格200元,淡季门票价格是旺季的八折。不论旺季还是淡季,65岁以上老人免票,14岁以下儿童半价,其余游客全价。
2 回复
#2
风过无痕19892020-11-21 21:00
回复 楼主 hahahahaha在
// 旺季为每年5到10月份,门票价格200元,淡季门票价格是旺季的八折。
//不论旺季还是淡季,65岁以上老人免票,14岁以下儿童半价,其余游客全价
#include <stdio.h>
int main()
{
      int m, a, p1 = 200;                                 // 月份 m , 年龄 a
      float price;                                     // 单价p
      printf("请输入游览的月份:");
      scanf_s("%d", &m);                                  // 不检查安全性的编译软件,可直接使用scanf()
      printf("请输入游客的年龄:");
      scanf_s("%d", &a);                                  // 不检查安全性的编译软件,可直接使用scanf()
      if (m >= 5 && m <= 10)                                // 旺季
      {
            if (a >= 14 && a < 65)
            {
                  price = p1;
            }
            else if (a < 14)                              // 14岁以下八折
            {
                  price = 0.5 * p1;
            }
            else                                    // 65岁以上老人免票
            {
                  price = 0;
            }
      }
      else if ((m >= 1 && m <= 4) || (m >=11 && m <= 12))                  // 淡季
      {
            if (a >= 14 && a < 65)
            {
                  price = 0.8 * p1;
            }
            else if (a < 14)                              // 14岁以下八折
            {
                  price = 0.5 * 0.8 * p1;
            }
            else                                    // 65岁以上老人免票
            {
                  price = 0;
            }
      }
      printf("单价为%0.2f", price);
      return 0;
}

[此贴子已经被作者于2020-11-21 21:12编辑过]

#3
llc_xz2020-11-22 05:54
回复 楼主 hahahahaha在
#include<stdio.h>

 #define P 200

 int main()
 {
     int age, month, price;

     printf("请输入月份:");
     scanf("%d", &month);

     printf("请输入游客年龄:");
     scanf("%d", &age);

     if ( age >= 65) price = 0;
     else if (age <= 14) price = P * 0.5;
          else if (month >= 5 && month <= 10) price = P;
               else price = P * 0.8;

    printf("当前该游客的票价为:%d元。\n", price);
    return 0;
 }

[此贴子已经被作者于2020-11-22 06:00编辑过]

1