3493737237 发表于 2021-8-8 23:25:56

这个应该怎么改?

#include <stdio.h>
int main ()
{
        int s;                     //s为距离
        double p,w,d,f;      //p运费,w重量,d折扣,f总运费
        printf("请输入单价 重量和距离:");
        scanf("%lf,%lf,&d",&p,&w,&s);
        switch(s)
        {
                case 'A':s<250,d=0;break;
                case 'B':250<=s<=500,d=2;break;
                case 'C':500<=s<=1000,d=5;break;
                case 'D':1000<=s<=2000,d=8;break;
                case 'E':2000<=s<=3000,d=10;break;
                case 'F':3000<=s,d=15;break;
        }
                f=p*w*s*(1-d/100.0);
                printf("运费:%10.2f元\n",f);
                return 0;
}

武德 发表于 2021-8-8 23:39:36

scanf函数那里&d改成%d;
switch函数case 'X'中的X只是类似于书签的作用,无法判断s大于或小于多少,建议用if-else语句
页: [1]
查看完整版本: 这个应该怎么改?