C语言中函数是什么?编程中的函数与数学中的函数区别?理解编程语言中的函数

        好多小伙伴刚学编程的时候,不知道函数和方法的区别是什么。java中叫方法,C语言又叫函数,javascript也叫函数...晕头转向。

        其实,他们来自两个单词:function(函数)与method(方法)。作用基本上相同,不过,我个人的理解是:方法更加依赖于类,存在在对象/类中叫做方法,函数则不是。而后来逐渐就不是特别区分了。

        在刚学编程语言的时候,有些小伙伴不知道编程语言中函数的作用。今天,我就用数学函数的角度解释编程语言中函数的作用!

总所周知,数学中的函数一般是这样的:

 y =  2 * x

估计上过八年级以上学过最基本的一次函数估计都可以理解这个式子。

那么,当他在x取不同值时,y也可以相应的变化。

        如果将这个式子写在代码中,看起来就成了将 2*x 的结果赋值给 y ,y接收到的就是2*x表达式的返回值!

        注意这个词:返回值。在未来你会反复的听到这个词。

        此时如果让你写个分别计算当x是2、3、8、10的值,

        数学中,将以上值一个个代入x中进行操作,得出对应的y

        编程语言中也一样,

        不过,假设后面要进行相同的某些较复杂的操作(这里就输出一句:代入xxx进行运算)

        (为了方便演示,拆开写了):

#include <stdio.h>
int main(){
    int x,y;

    x = 2;
    printf("代入2进行运算\n");
    y = 2*x;
    printf("%d\n",y);

    x = 3;
    printf("代入3进行运算\n");
    y = 2*x;
    printf("%d\n",y);

    x = 8;
    printf("代入8进行运算\n");
    y = 2*x;
    printf("%d\n",y);

    x = 10;
    printf("代入10进行运算\n");
    y = 2*x;
    printf("%d\n",y);

    return 0;
}

         因为做的操作过于简单,但如果是个很复杂的式子,这样写就会显得代码冗余。那么就可以利用到函数这个概念。

        先把C语言函数的格式讲一下吧!

        [返回值类型]   [函数名] ([函数参数]...){

                // 使用传过来的参数执行的操作

        }

        返回值类型可以是基本数据类型(如int,char,float,double...),返回的数据就是经过处理函数的数据!

        那么,刚刚的式子就可以封装成一个函数(假设函数名就叫a):

int a(int x){
    printf("代入了%d进行计算!\n",x);
    return 2 * x;
}

        这是最基本的一个C语言函数的格式,小括号中间的是参数。想对什么值做处理,就传入什么值即可(也可以选择声什么都不传,但是小括号不能省略),传入的类型与定义参数的类型必须相同,接收返回值的类型必须跟返回值类型相同!(如这个例子返回值为int类型,接收也用int类型)

        此时,原来的代码就可以写成,也可以完成与刚刚相同的操作:

# include <stdio.h>

int main(){
    int x,y;

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

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

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

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

    return 0;
}

         有些同学又会觉得,这还要返回一个值,然后再输出。函数既然能复用,为什么不全封装进去?确实也可以这样,不过这时就要注意了:函数不需要返回什么给调用者的时候,返回值类型就可以写 void 了,不过此时,再也不能拿任何变量来接收这个函数的返回值了

        完整代码如下:

#include <stdio.h>
void a(int x){
    // 声明一个变量保存x处理后的结果
    int y;
    printf("代入了%d进行计算!\n",x);
    y = 2 * x;
    printf("%d\n",y);
}
int main(){
    int x;

    // 调用函数的时候函数内会输出
    // 所以不需要一个个写printf    

    x = 2;
    a(x);


    x = 3;
    a(x);

    x = 8;
    a(x);

    x = 10;
    a(x);

    return 0;
}

        此时,编程中的“函数”的概念与数学中“函数”的概念完美结合起来。但明显编程中的函数远比数学中函数更加的灵活多变!

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
C语言函数是一段被命名的可执行代码块。函数的使用分为函数定义和函数调用两个步骤。 函数的定义包括函数的返回类型、函数名以及函数的参数列表和函数体。函数的返回类型决定了函数的返回值类型,函数名是用来标识函数的唯一名称,参数列表是函数在调用时所需要传递的参数,函数体是具体的执行代码。函数的定义可以在程序的任意位置,但通常是在主函数之前进行。 函数的调用是指使用函数名加上参数列表的方式来执行函数的代码。在函数调用时,需要按照函数定义的参数列表顺序传递实际参数,这些实际参数会被赋值给函数定义对应的形式参数。函数调用完成后,会返回一个值,该值可以根据返回类型进行接收或处理。 函数可以返回一个值,也可以不返回任何值。如果函数没有返回值,可以将返回类型设为void。在函数定义,可以使用return语句来指定函数的返回值,return后面的表达式将会被当作返回值返回给函数调用处。 函数的使用可以提高程序的模块化和可重用性,可以将一段实现某一功能的代码封装成函数,当需要使用该功能时,只需要调用函数即可。同时,函数的使用也能提高代码的可读性和维护性。 总结来说,C语言函数的使用需要包括函数的定义和函数的调用。函数的定义包括返回类型、函数名、参数列表和函数体,函数的调用通过函数名和参数列表来执行函数的代码。函数可以有返回值,也可以没有返回值。函数的使用可以提高程序的模块化和可重用性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值