zoukankan      html  css  js  c++  java
  • C语言中的函数与数学上的函数很类似

    函数,是C语言编程中一个很重要的概念,重要到个人认为可以与指针并驾齐驱。好多教材、老师、学习资源都会专门挑出一章来讲函数。我今天也来说说函数,只不过我是从数学课上的函数来引申到C语言中的函数。

    先来说说数学课上老师讲的函数概念。我上初中那会儿开始接触数学的函数,最经典的就是二次方程式了,如下:

    f(x) = xx + 2x + 1

    好多人还记得这个方程式吧!x是参数,xx + 2x + 1是函数式,当x为不同的值时,f(x)具备不同的结果。我们会求当:

    x=1时,f(1) = 1*1 + 2*1 + 1 = 4

    x=2时,f(2) = 2*2 + 2*2 + 1 = 9

    x=3时,f(3) = 3*3 + 2*3 + 1 = 16

    …………………………….

    f(x)的函数式万万千千,有一次函数,有二次函数,有三次函数,有N次函数,数也数不清。好了,帮各位回忆了下初中数学课程后,我们再来看看C语言编程中的“函数”与数学课上的“函数”有什么区别呢?以f(x) = xx + 2x + 1为例,我可以将其变为C语言中的“函数”,如下:

    int f(int x)
    {
    int result = 0;
    result = x*x + 2*x +1;
    return result;
    }

    Look,在这个C语言中的函数中,函数名叫f,参数叫x,里面有一条执行语句:x*x + 2*x +1;最后变量result就是x*x + 2*x +1计算出的值。我们将这个C语言函数与数学的f(x) = xx + 2x + 1做个类比:

    数学函数f(x) = xx + 2x + 1 C语言函数int f(int x)

    函数名: f f

    运算参数:x x

    运算式子:xx + 2x + 1 语句x*x + 2*x +1;

    运算结果:f(x) result

    是不是很相似?所以我觉得C语言中的“函数”概念,应该是借鉴了数学中“函数”的概念了吧。

    不过C语言函数蕴含的信息却要比数学函数更多,比如:

    1. C语言函数需要为形参指定类型,如int,long等。而数学函数的参数,你想用整型、浮点型还是什么随便你;

    2. C语言函数可以没有返回值。数学函数只要有参数代入,都会有一个结果值;

    3. C语言一个函数中可以按顺序计算一个表达式、然后再printf些信息、再计算一个表达式等等多个逻辑操作,而每个数学函数只有按照函数式计算一个逻辑。

    最后,我们可以得出结论,C语言“函数”与数学“函数”有相似的概念,但是处理的信息却比数学函数多得多。

    本文为原创,欢迎转发。

    欢迎关注作者微博与微信号:C语言编程技术分享



  • 相关阅读:
    洛谷 P2480 [SDOI2010]古代猪文
    [六省联考2017]组合数问题
    数据结构--左偏树(可并堆)
    图论--tarjan求割点
    图论--tarjan缩点
    图论--DFS-SPFA求负环
    图论--tarjan求lca
    洛谷 P2163 [SHOI2007]Tree 园丁的烦恼
    数据结构--主席树(不带修改)
    洛谷 P1712 区间
  • 原文地址:https://www.cnblogs.com/itblog/p/7236552.html
Copyright © 2011-2022 走看看