请教一个C语言程序问题

来源:百度知道 编辑:UC知道 时间:2024/05/02 13:58:54
一辆卡车要横穿一个1000千米的无人沙漠,它的载油量为500升,耗油量为每升油能跑1千米.
穿越方法是先走到第1个地点(比如10千米),此时车上还有490升油,然后卸下480升油,用最后10升油跑回起点.然后加满油继续跑到第1个地点,卸下油,然后跑回.然后从第1个地点跑到第2个地点(第1个地点已经有足够多的油),然后再运.
请编一个C语言程序,问如何设置储油点,每个储油点存多少油,是此卡车穿越沙漠耗油量最少

PS:这个车够费油!还不如带个油桶过去要省多少油啊!

main()
{float distance[100];
float oil[100];
float x[100];
float restoil,totaloil;
int i,j;
clrscr();
distance[0]=1000;
for(i=0;i<=100;i++)
{oil[i]=500*i;
x[i]=500/(2*i+1);
distance[i+1]=distance[i]-x[i];
if(distance[i+1]<0) break;}
restoil=((int)(oil[i]/(500-2*distance[i])+1)*2-1)*distance[i];
totaloil=oil[i]+restoil;
for(j=0;j<=100;j++)
{printf("put %foil in %f\n",oil[j],distance[j]);
if(distance[j+1]<0) break;}
printf("The total oil is %f",totaloil);}

这是数学问题,数学解决了直接移植到C语言中
这不属于C语言问题了...
C语言问题只能是算法或者语法问题...
虽然你问的是算法.但赤裸裸的就是数学问题。..

这个问题难哦,如果你手工知道怎么算,我就能写成C语言程序:)