⑴ c語言 計程車問題 三公里內起步價為8.0元,三公里以外每公里的運價為2.0元。編寫程序
給你一個分析思路,具體實現自己寫吧!
分析:
<1>三公里內的起步價為8.0元,那麼這里就可以做一個判斷:
如果從鍵盤上輸入的乘車里程數小於或者等於3時,那麼收費就是8.0元。
假設從鍵盤上輸入的里程數是n,收費為m,就有:
if(n <= 3)
{
m = 8;
}
然後列印輸出就行了。
<2>三公里意外的情況,三公里意外每公里的運價為2.0元,那麼就是說當里程數到了三公里時,車費就為8.0元,而超過三公里的部分按照每公里2.0元收取費用。
假設鍵盤輸入的里程數是n,收費為m,那麼就有:
if(n > 8)
{
m = 8 + (n - 3) * 2;
}
然後列印輸入即可。
總體的思路就是這樣了,希望能夠幫到你!
⑵ C語言編程:計程車計費
「每5分鍾按1公里租費」這里的1公里租費你沒有說清,我按照2元每公里算的,程序如下:
#include "stdio.h"
int main(int argc, char* argv[])
{
int length,time,sum;
start:
printf("請輸入行駛里程(公里):");
scanf("%d",&length);
printf("請輸入等待時間(分鍾):");
scanf("%d",&time);
if(length<0||time<0)
{
printf("行駛里程和等待時間不能為負數!\n");
goto start;
}
else if(length<=3)
{
sum=10;
}
else if(length<=13)
{
sum=10+(length-3)*2;
}
else
sum=10+10*2+(length-13)*3;
sum=sum+(int)(time*(0.4)); //等待的每分鍾0.4元
printf("乘客應支付的車費(元):\t%d\n",sum);
return 0;
}
⑶ c語言,計程車計價問題
本題要求根據某城市普通計程車收費標准編寫程序進行車費計算。具體標准如下:
起步里程為3公里,起步費10元;
超起步里程後10公里內,每公里2元;
超過10公里以上的部分加收50%的回空補貼費,即每公里3元;
營運過程中,因路阻及乘客要求臨時停車的,按每5分鍾2元計收(不足5分鍾則不收費 )。
輸入格式:
輸入在一行中給出輸入行駛里程(單位為公里,精確到小數點後1位)與等待時間(整數,單位為分鍾),其間以空格分隔。
輸出格式:
在一行中輸出乘客應支付的車費(單位為元),結果四捨五入,保留到元。
輸入樣例1:
2.6 2
輸出樣例1:
10
輸入樣例2:
5.1 4
輸出樣例2:
14
輸入樣例3:
12.5 9
輸出樣例3:
34
代碼:
#include<stdio.h>
#include<math.h>
intmain(void)
{
doubles,t,p1,p2;
intp;
scanf("%lf%lf",&s,&t);
if(s<=3)
{p1=10;}
elseif(s>3&&s<=10){p1=10+2*(s-3);}
elsep1=24+3*(s-10);
if(t<5){p2=0;}
elsep2=0.4*t;
p=(int)(p1+p2+0.5);
printf("%d ",p);
return0;
}
⑷ C語言計程車計價問題
演算法錯誤。
1、超起步里程後10公里內,並不是3到10,而是從4公里開始計算10公里;後面的超過10公里是同樣道理。
2、time/5*2也不對,不滿足題目要求的不足5分鍾不收費。
格式沒什麼問題,演算法基本全錯。
⑸ c語言,計程車收費,我的哪裡錯了,謝謝。
x += (t/5);
if(x<=3){
money = 10;
}
else if (x>3 && x<=10){
money = 10 + (x-3)*2;
}
else if(x > 10)
{
money = 10 + (10-3)*2 + (x-10)*3;
}
計算結果出的money再四捨五入,具體就不寫了
⑹ C語言題目 計程車計價問題求大神解答
是沒有輸出?還有,應該是b<5,等於5的時候已經到5分鍾了,應該計費
⑺ 用C語言要寫,計程車收費,3公里內收5元,超3公里部分每公收1.2元。
#include<stdio.h>
intmain()
{
inta;
floatv;
scanf("%d",&a);
if(a<=3)v=5;
elsev=5+1.2*(v-3);
printf("%.1f ",v);
return0;
}
⑻ C語言編程:請編計程車計費程序
#include
"iostream"
using
namespace
std;
int
main()
{
int
index;
double
per;
double
qibu;
int
kilometre;
double
pay
=
0;
cout
<<"輸入里程數(公里):";
cin
>>
kilometre;
cout
<<"選擇車輛:1.桑塔納
2.夏利"<<endl;
cin>>index;
if(index==1)
{
per
=
2.7;
qibu
=
4;
}
else
{
per
=
2.1;
qibu=3;
}
if(kilometre>3)
pay
=
qibu
+
(kilometre-3)*per;
else
pay
=
qibu;
cout
<<"總價為:"<<pay<<endl;
return
0;
}
你也可以用結構數組來保存單價和起步費
⑼ 急!!!C語言中計程車計費程序設計
1 剛編寫完的,徒手編寫,沒在編譯器上跑,你跑下試試吧。
2 我對超8公里的理解是 起步3公里+超過的總共是8公里,如果理解的不對,把第1個函數第二和第3個語句 if里的8改成11就可以了。
3 我對輸入的公里 和 分鍾都定義成整型了,比如輸入3.2,默認為3公里或者3分鍾,因為我印象里計程車跑不夠整公里,就不加錢。如果你那裡要求跑3.2公里就收3.2公里的錢的話,把主函數里對l和d 的定義改下,改double,子函數也得稍做變化,不過我覺得應該不用改,反正真實的計程車就是這么收費的。
4 下面是代碼:
有點長,不過附帶判斷輸入數據的功能,比如輸入負數,字母什麼的,都沒關系,所以長了點
#include <stdio.h>
int main()
{
int d,l,q;
double q1,q2,Q,x;
printf("請輸入您行駛里程(公里):\n");
for(;;){
scanf("%d",&l);
scanf("%*[^\n]");
scanf("%*c");
if(l<=0) {printf("您輸入的有誤,請重新輸入您的行駛里程(公里):\n");}
else break;}
printf("請輸入您等待的時間(分鍾):\n");
for(;;){
scanf("%d",&d);
scanf("%*[^\n]");
scanf("%*c");
if(d<0) {printf("您輸入的有誤,請重新輸入您的等待時間(分鍾):\n");}
else break;}
q1=f1(l);
q2=f2(d);
Q=q1+q2;
q=(int)Q;
x=Q-q;
if(x>=0.5) q=q+1;
printf("請您支付 %d(元)車費\n",q);
return 0;
}
double f1(int l)
{
double q;
if(l<=3){
return 6.0;}
else if(l<=8){
q=(l-3)*1.8+6;
return q;}
else{
q=(l-8)*2.7+5*1.8+6;
return q;}
}
double f2(int d)
{
double q;
int l;
l=d/5;
q=l*1.8;
return q;
}