函数概述

利用之前学过的C语言语法,我们已经可以编写一些简单的程序了,但如果面对一些复杂的程序问题,如果将所有代码全都写在一个主函数里,会显得程序特别繁琐,没有可读性。例如我们想做一个简单的计算器,可以进行四则运算和三角函数、开方平方等运算,这个时候就需要有一种“组装”的思想,将每一个功能单独编写,然后在主函数中分别调用。这就涉及到C语言中“模块化程序设计”的设计思想。

在设计较大的程序时,往往将整个程序分为很多程序模块,分别写在对应的函数中,每个函数实现一个特定的功能。一个函数可以被其他函数调用多次。在一个程序中,只能有唯一的一个main函数。 我们举个例子来体会一下模块化程序设计的思想,例如我们想要写一个程序,可以输出在两个星号间的字符:

#include<stdio.h>
void  charwithstar(char  s)
{
    printf(“**********\n%c\n**********” , s);
}
int  main( )
{
    void  charwithstar(char  s);
    charwithstar(‘c’)
    return  0;
}

这个程序的运行结果是:

**********
c
**********

上述程序中,charwithstar是用户自己定义的一个函数,功能是输出一个夹在两行星号间的字符。在函数这一部分,有一些名词的概念需要明确。

参数: 定义函数功能时用到的变量,用来指定函数的相应功能。例如add是我们定义的一个函数,它的功能是将a和b相加,那么a和b就是这个函数的参数。

返回值: 函数的所有功能进行下来,需要保留到调用函数的函数中使用的值。比如刚才的add函数,我们需要将a和b的值加起来进行赋值,那么a和b的加和就是这个函数的返回值,就是整个函数的值。

C程序从main函数开始,遇到其他函数时跳转到对应函数,执行完对应功能后回到main函数,最后在main函数中结束整个程序。函数与函数之间互相独立,不可以嵌套定义。从函数形式看,函数分为有参函数与无参函数。无参函数一般用来执行固定的操作,有参函数一般需要进行参数传递,对不同的参数进行处理输出。函数有的带回返回值,有的不带回返回值,这个因程序而异。

这本书是xt写的上次修改: 2019-04-18 15:24:43

results matching ""

    No results matching ""