C 创建if else程序以计算不同车辆的不同停车成本时遇到问题

C 创建if else程序以计算不同车辆的不同停车成本时遇到问题,c,dev-c++,C,Dev C++,我很难使这段代码正常工作。我刚刚学习了这个内容(if-else语句),必须通过创建一个程序来计算每辆车的停车成本来实现。c是汽车(每小时2美元),b是公共汽车(每小时3美元),t是卡车(每小时4美元)。这是用dev-c++编译器进行的c编程 感谢所有的反馈,提前谢谢 #包括 //声明 停车费(国际个人电脑); int pc; int h,total,c,b,t; char v; 内部主(空) { //声明 printf(“输入车辆类型(c表示车辆)”; printf(“b代表公共汽车,t代表

我很难使这段代码正常工作。我刚刚学习了这个内容(if-else语句),必须通过创建一个程序来计算每辆车的停车成本来实现。c是汽车(每小时2美元),b是公共汽车(每小时3美元),t是卡车(每小时4美元)。这是用dev-c++编译器进行的c编程

感谢所有的反馈,提前谢谢

#包括
//声明
停车费(国际个人电脑);
int pc;
int h,total,c,b,t;
char v;
内部主(空)
{	
//声明
printf(“输入车辆类型(c表示车辆)”;
printf(“b代表公共汽车,t代表卡车):”;
scanf(“%c”、&v);
printf(“你停了多长时间?”);
scanf(“%d”、&h);
总数=pc;
printf(“您的总数为:%d”,总计);
返回0;
}
字符停车费(内部pc)
{
//声明
如果(v==c){
pc=2*h;
}
else如果(v==b){
pc=3*h;
}
else如果(v==t){
pc=4*h;
}
返回总数;
}
#包括
//声明
内部停车收费(字符v,内部h);
int-h;
char v;
内部主(空)
{
//声明
printf(“输入车辆类型(c表示车辆)”;
printf(“b代表公共汽车,t代表卡车):”;
scanf(“%c”、&v);
printf(“你停了多长时间?”);
scanf(“%d”、&h);
//你忘了调用函数parkingCharge。
总积分=停车费(v,h);
printf(“您的总数是:%d\n”,总数);
返回0;
}
//parkingCharge应该返回一个int值,您可以通过
//v和h作为参数。
内部停车收费(字符v,内部h)
{
int pc;
//请记住,当您将变量与常量字符进行比较时
//将常量char值置于“”之间。
如果(v='c'){
pc=2*h;
}
else如果(v='b'){
pc=3*h;
}
else如果(v='t'){
pc=4*h;
}
返回pc;
}

parkingCharge可能会返回int(速率和时间的乘积),谢谢您的回复!我不明白你说的是什么意思。我对编程相当陌生。pc等于产品价格和时间,不是吗?你甚至不需要调用
parkingCharge()
,但如果调用了,那么变量的使用就到处都是……如果车辆是
'k'
,你只需要在必要时再调用一次。Like:else如果(v=='k'{…}.:)不,你需要!或者初始化
pc
。啊。我原以为parkingCharge将是一个字符,int将是pc。我还忘记了变量“”的含义。我也不明白为什么在这个“int parkingCharge(char v,inth);”中使用char v和inth我不是在质疑你的答案,只是我个人不明白。我正在从一本书中学习编程,有些内容非常笼统,没有太多细节。@WeatherVane:你是将“k”视为期望值还是意外值?
#include <stdio.h>

//declaration
int parkingCharge (char v, int h);
int h;
char v;

int main (void)
{
//statements

        printf ("Enter type of vehicle (c for car, ");
        printf ("b for bus, or t for truck): ");
        scanf ("%c", &v);

        printf ("How long did you park: ");
        scanf ("%d", &h);
        // You forgot to call the function parkingCharge.
        int total = parkingCharge(v, h);
        printf ("Your total is: %d\n", total);

return 0;
}
// parkingCharge should return an int value and you could pass
// v and h as parameters.
int parkingCharge (char v, int h)
{
    int pc;
    // Remember when you compare a variable with a constant char, you
    // put the constant char value between ''.
    if (v == 'c'){
           pc = 2 * h;
    }
    else if (v == 'b'){
           pc = 3 * h;
    }
    else if (v == 't'){
           pc = 4 * h;
    }
    return pc;
}