为什么我输出完是随机数?

#include <stdio.h>
float price;
int sprice(int longer)
{
    if(longer<=3&&longer>0)
    {
        price=13.0;
    }
    else
    {
        price=(longer-3)*2.3+14.0;
    }
}
int main()
{
    sprice(12);
    printf("每天打车的总费用为%d",price);
    return 0;
}


慕斯卡6439517
浏览 1531回答 2
2回答

Yexiaomo

错误的地方 有两个:error1: 函数sprice() 你没有 写 返回值, 需要写 返回值, 或者  改为 void sprice() error2: 打印 总费用 不要用 %d , price 为 float类型  需改为  printf("每天打车的总费用为%f",price);代码如下:#include <stdio.h> float price; void sprice(int longer) {     if(longer<=3&&longer>0)     {         price=13.0;     }     else     {         price=(longer-3)*2.3+14.0;     } } int main() {     sprice(3);     printf("每天打车的总费用为%.2f",price); //输出结果保留两位小数     return 0; }尽量不要使用 这种 全局变量,如果只是 练习 的话, 那就无所谓了    望采纳!

眼前的黑不是黑zz

#include <stdio.h>int sprice(int longer){    if(longer<=3&&longer>0)    {        price=13.0;    }    else    {        price=(longer-3)*2.3+14.0;    }    return price;}int main(){    float price = sprice(12);    printf("每天打车的总费用为%d",price);    return 0;}
打开App,查看更多内容
随时随地看视频慕课网APP