⑴ 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;
}