您的位置:

加油问题c语言,c语言汽车加油问题

本文目录一览:

C语言 汽车加油问题

#includestdio.h

int main()

{

int n,k,i,t=0,sum=0,a[101]={0};

scanf("%d %d",n,k);

for(i=1;i=k+1;i++)

{

scanf("%d",a[i]);

}

for(i=1;i=k+1;i++)

{

if(a[i]n)

{

printf("No Solution\n");

return 0;

}

}

for(i=1;i=k+1;i++)

{

sum+=a[i];

if(sumn)

{

t++;

i--;

sum=0;

}

else if(sum==n)

{

t++;sum=0;

}

}

if(a[k+1]+a[k]==n)

t--;

printf("%d",t);

}

改成这样应该就可以实现了

c语言求教关于加油问题

b是int型变量,switch的case后面接整形。

#includestdio.h

int main()

{

    float r1,r2,s;

    int a,b;

    char c;

    s=0;

    scanf("%d %d %c",a,b,c);

    switch(b)

    {

        case 90 : r1=6.95; break;//////

        case 93 : r1=7.44; break;//////

        case 97 : r1=7.93; break;//////

    }

    switch(c)

    {

        case 'm' : r2=0.95; break;

        case 'e' : r2=0.97; break;

    }

    s=r1*r2*a;

    printf("%.2f",s);

    return 0;

}

C语言 加油问题

是scanf和getchar的机制问题,你可以尝试把

printf("请选择加油方式:s或a或n(s自助,a协助,n普通):\n");

service = getchar();

移动到最前面输入,这样应该就可以解决你的问题了

C语言加油问题

#include stdio.h

#include stdlib.h

int main()

{

int weight;

float price1,price2,price3,result;

int choose;

int flag;

price1 = 1.5;

price2 = 1.35;

price3 = 1.12;

printf("请输入加油量:");

scanf("%d",weight);

printf("请选择汽油型号(90选择1,93选择2,97选择3):");

scanf("%d",choose);

switch(choose){

case 1: result = price1 * weight;break;

case 2: result = price2 * weight;break;

case 3: result = price3 * weight;break;

default: printf("输入错误");break;

}

printf("请选择服务类型(自助服务选择1,非自助服务选择2):");

scanf("%d",flag);

if(flag == 1){

result = result * (1-0.1);

}else if(flag == 2){

result = result * (1-0.05);

}else{

printf("输入错误");

}

printf("本次消费:%.2f",result);

}

汽车加油问题 c语言

最后三行改为

for(i = 0;i k+1;i++)

scanf("%d",d[i]);

greedy(d,n,k+1);

k是加油站的数量, 所以汽车行驶的路段数是k+1, 包括起点到第一个加油站1段, 加油站之间k-1段, 最后一个加油站到终点1段