m0_74001351 2022-10-13 12:34 采纳率: 50%
浏览 34
已结题

门票问题运算的问题,有性别类别之分

img


在一行中包含三个数据,第一个是年龄,第二个性别(M代表男性,F代表女性),第三个是类别(C代表残疾人士、X代表现役军人和消防人员,P代表普通群众)。三个数据之间以空格分隔。
程序显示运行不了,但是不知道哪错了,求指教

  • 写回答

1条回答 默认 最新

  • 快乐鹦鹉 2022-10-13 13:20
    关注

    首先,根据题目意思,一行就三个数据,你哪来那么多scanf内容?
    其次,if完全是乱套的,一方面if后面不要加分号,另一方面12到18岁应该是if(A>=12 && A<=18)

    #include <stdio.h>
    int main()
    {
        int age,pay=180;
        char sex,type;
        scanf("%d %c %c",&age,&sex,&type):
        if(age >= 70 && sex == 'M')
             pay = 0;
        else if(age >= 65 && sex == 'F')
             pay = 0;
        else if(age <= 11 || type == 'C || type == 'X')
             pay = 0;
        else if(age>=12 && age <= 18)
             pay = 120;
        else if(age >= 60 && age <= 69 && sex == 'M')
             pay = 120;
        else if(age >= 55 && age <= 64 && sex=='F')
             pay = 120;
        printf("%d\n",pay);
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 11月4日
  • 已采纳回答 10月27日
  • 创建了问题 10月13日

悬赏问题

  • ¥15 mySQL5.7.34安装遇到的问题
  • ¥15 结构功能耦合指标计算
  • ¥20 visual studio中c语言用ODBC链接SQL SERVER
  • ¥50 AI大模型精调(百度千帆、飞浆)
  • ¥15 非科班怎么跑代码?如何导数据和调参
  • ¥15 福州市的全人群死因监测点死亡原因报表
  • ¥15 Altair EDEM中生成一个颗粒,并且各个方向没有初始速度
  • ¥15 系统2008r2 装机配置推荐一下
  • ¥15 悬赏Python-playwright部署在centos7上
  • ¥15 psoc creator软件有没有人能远程安装啊