C/C++教程

【养成记】嵌入式挑战第12天,C语言中的函数:函数传参的值传递

本文主要是介绍【养成记】嵌入式挑战第12天,C语言中的函数:函数传参的值传递,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

课程章节:

课程名称:物联网/嵌入式工程师
章节名称:第4周之第四讲 1-5 至 1-6 C语言中的函数:函数传参的值传递
讲师姓名:大白老师

课程内容:

C语言中的函数:函数传参的值传递

C语言的函数传参

传参的本质

本质:函数传参的本质,变量之间的赋值操作。

值传递

功能:在传递变量中保存的数据。核心思想是传递什么样子类型的变量。在接收的位置,就定义什么样类型的变量来接收。

代码示例

#include <stdio.h>

//函数传参的本质:变量之间的赋值操作

//int x = a;
//int y = b;
int do_calc(const int x,const int y) //函数的定义
{
    int sum = 0;

    printf("x = %d y = %d\n",x,y);

    sum = x + y;

    return sum;  //在函数结束前,返回一个数据给调用者,返回值的类型要和sum匹配
}

int main() //程序的入口,开始的地方
{
    int a = 0,b = 0;
    int t = 0;
    printf("please input two data : ");
    scanf("%d%d",&a,&b);

    //t = sum;
    t = do_calc(a,b); //函数返回值的使用
    printf("a + b = %d\n",t);

    t = t * 100 - 8;
    printf("expression result = %d\n",t);

    //计算:  ret = (x + y) * 100 - 8
    return 0;
}

学习笔记:

课后任务

练习

//判断y是否是闰年,若是闰年,返回1,否则返回0
int do_leap(int y)
{
        
}

int main()
{
    int year;
    
    //1.要求用户从键盘输入1个年份赋值给year。
    
    //2.然后调用do_leap(year)函数,判断是否是闰年
    
    //3.利用ret变量接收返回值,若是闰年,输出"xx年是闰年",否则输出"xx年不是闰年"
}

代码

#include <stdio.h>

//判断y是否是闰年,若是闰年,返回1,否则返回0
int do_leap(const int y)
{
    int ret = 0;

    if (y%4 == 0 && y%100 !=0)
    {
        ret = 1;
    } else if (y%400 == 0){
        ret = 1;
    } else {
        ret = 0;
    }

    return ret;
}

int main()
{
    int year,ret;

    //1.要求用户从键盘输入1个年份赋值给year。
    printf("请输入一个年份:\n");
    scanf("%d",&year);

    //2.然后调用do_leap(year)函数,判断是否是闰年
    ret = do_leap(year);

    //3.利用ret变量接收返回值,若是闰年,输出"xx年是闰年",否则输出"xx年不是闰年"
    ret ? printf("%d年是闰年\n",year) : printf("%d年不是闰年\n",year);

    return 0;
}

课程评价:

通过函数传参的学习,能够使代码块更加低内聚高耦合。

这篇关于【养成记】嵌入式挑战第12天,C语言中的函数:函数传参的值传递的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!