黑马程序员——C语言函数的返回值笔记和练习题

时间:2022-06-01 16:51:57

-                                                            -----Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

1)、函数的返回值要点:

1. 函数的值只能通过return语句返回主调函数。return语句的一般形式为: return 表达式 或者为: return (表达式);

2. 函数值的类型和函数定义中函数的类型应保持一致。如果两者不一致,则以函数返回类型为准,自动进行类型转换。


2)、函数的形参与实参:

1、形参只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。因此,形参只有在函数内部有效。函数调用结束返回主调函数后则不能再使用该形参变量。

2、实参可以是常量、变量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值,以便把这些值传送给形参。因此应预先用赋值等办法使实参获得确定值。

3、在参数传递时,实参和形参在数量上,类型上,顺序上应严格一致,否则会发生类型不匹配”的错误。


练习题:

北京市出租车打车计费规则如下:

1. 每公里单价计费2.3元

2. 起步价13元(包含3公里)

3. 晚上23点(含)至次日凌晨5点(不含)打车,每公里单价计费加收20%。

4. 每次乘车加收1元钱的燃油附加税。小明每天上下班都要打车,公司和家的距离为12公里,上午上班时间为9点,下午下班时间为6点。请编写一个小程序计算小明每天打车的总费用


代码:

#include <stdio.h>

float taxifee(int clock,int miles)
{
    float money;
    if(miles<=3)
    {
        money=14;
        printf("费用为14\n");
    }
    else
    {
        if(clock>=23 || clock<5)
        {
            money=13+1+2.3*(miles-3)*1.2;
            printf("夜间车费为:%f\n",money);
        }
        else
        {
            money=13+1+2.3*(miles-3);
            printf("日间车费为:%f\n",money);
        }
    }
   
    return money;   
}
int main()
{
    printf("打的总费用:%.1f\n",taxifee(9,12)+taxifee(18,12));
    return 0;
}