c語言運費
⑴ C語言運費問題
scanf("%f,%f%d",&p,&w,&s);少了一個逗號
⑵ 用C語言編寫程序,輸入路程直接得出運費
#include <stdio.h>
float Calculation(float ,float);
int main()
{
j = 0, k = 0;
printf("請輸入你的正常運費和路程:");
if (scanf("%f %f", &j, &k) == 2)
printf("經計算你的運費是:%.2f", Calculation(j, k));
else
printf("你輸入的不規范");
getchar();
return 0;
}
float Calculation(float j, float k)
{
if (k > 3000)
return j * k * (1 - (float)15 / 100);
else if (k > 2000)
return j * k * (1 - (float)10 / 100);
else if (k > 1000)
return j * k * (1 - (float)8 / 100);
else if (k > 500)
return j * k * (1 - (float)5 / 100);
else if (k > 250)
return j * k * (1 - (float)2 / 100);
else
return j * k;
}
⑶ C語言 運輸公司對用戶計算運費~
首先 d不要定義成double, 要定義成int
然後,d給它一個初始值, 用1
也就是 開始的double d,f; int p , w, s;
改成
intd=1;
doublep,w,s,f;
scanf("%lf%lf%lf",&p,&w,&s);
其它的 可以不用動
⑷ c語言運費問題
#include"stdio.h"
intmain(){
doubles,p,f,w,d;
scanf("%lf%lf%lf",&p,&w,&s);//先輸入它們的值,才有後面的判斷計算
if(s<250) { d=0; }
elseif(250<=s&&s<500) { d=0.02; } //關系運算不回能連用,答如題應該是用&&來連接兩個關系運算,代表並且的意思
elseif(500<=s&&s<1000) { d=0.05; } //關系運算不能連用,如題應該是用&&來連接兩個關系運算,代表並且的意思
elseif(1000<=s&&s<2000) { d=0.08; } //關系運算不能連用,如題應該是用&&來連接兩個關系運算,代表並且的意思
elseif(2000<=s&&s<3000) { d=0.1; } //關系運算不能連用,如題應該是用&&來連接兩個關系運算,代表並且的意思
else { d=0.15; }
f=p*w*s*(1-d);
printf("%lf ",f);//缺少了一個f字母
}
⑸ c語言求運費
你的程序里,switch的表達式d是浮點數,但C規定這里。不能是浮點數,只能回是整形或其他類型。其實實答現很簡單,用s去除250這個單位距離就好了,得出的商就是超過的距離數,你看看:
#include<stdio.h>
int main()
{
double f,p,w,d,s,y;
printf("3 ge shu\n");
scanf("%lf %lf %lf",&p,&w,&s);
switch((int)s/250)
{
case 0:d=0;break;
case 1:d=0.02;break;
case 2:d=0.05;break;
case 4:d=0.08;break;
case 8:d=0.1;break;
case 12:d=0.15;break;
default: d=0.15;break;
}
f=p*w*s*(1-d);
printf("f=%.2lf d=%.2lf\n",f,d);
}
⑹ c語言郵費計算哪裡錯了
int w,f;
改為抄
float w,f;
然後if-else塊加上襲大括弧
if (w<=100)
{
f=w*0.05;
printf("郵費為:%f\n",f);
}
else
{
f=100*0.05+(w-100)*0.02;
printf("郵費為:%f\n",f);
}
printf("f=%f\n",f);
⑺ 一道c語言題目,運費按計費標准計算
可以用switch case 來做的。
⑻ C語言求運費
scanf("%f,%f,%f",&p,&w,&s); 改為
scanf("%f,%f,%d",&p,&w,&s);
⑼ c語言 求運費
用復if{} elseif{} else{}
if(s < 200)
{
d=0;
}
else if(s>=200 && s<400)
{
d=0.02;
}
else if(s>=400 && s<1000)
{
d=0.05;
}
else if(s>=1000 && s<2000)
{
d=0.1;
}
else if(s>=2000)
{
d=0.15;
}
else
{
//這時制s小於0 應該報錯
}
⑽ C語言,計算運費問題,
#include"stdio.h"
intmain(){
doubles,p,f,w,d;
scanf("%lf%lf%lf",&p,&w,&s);//先輸入它們的值,才有後面的判斷計算
if(s<250) { d=0; }
elseif(250<=s&&s<500) { d=0.02; } //關系運算不能連用,如題應該是用&&來連接兩個關系運算,代表並且的意思
elseif(500<=s&&s<1000) { d=0.05; } //關系運算不能連用,如題應該是用&&來連接兩個關系運算,代表並且的意思
elseif(1000<=s&&s<2000) { d=0.08; } //關系運算不能連用,如題應該是用&&來連接兩個關系運算,代表並且的意思
elseif(2000<=s&&s<3000) { d=0.1; } //關系運算不能連用,如題應該是用&&來連接兩個關系運算,代表並且的意思
else { d=0.15; }
f=p*w*s*(1-d);
printf("%lf ",f);//缺少了一個f字母
}