c语言博客作业03--函数

0.展示PTA总分

1.本章学习总结

1.1 学习内容总结

1.函数的定义

       (1)函数是一个完成特定工作的独立模块,包括库函数和自定义函数两种。库函数由C语言系统提供定义,编程时直接调用即可;自定义函数需要用户自己定义。
       (2)函数定义的一般形式为:
                函数类型 函数名 (形式参数表)/*函数首部*/
                {
                    函数实现过程                            /*函数体*/
                }
          注:函数首部后面不能加分号,它和函数体一起构成完整的函数定义。
                 形参表不能写成 double r,h。
          例:
        ```
            int gcd(int m, int n)
            {
            int i;
            int temp;

            if (m < n)
            {
	        temp = m; m = n; n = temp;
            }
            for (i = n; i >= 1; i--)
            {
	        if (m % i == 0 && n % i == 0)
	    {
		break;
	    }
        }
   ```

2.函数的调用

     (1)函数调用过程:任何C程序执行,首先从主函数开始,如果遇到某个函数调用,主函数被暂停执行,转而执行相应的函数,该函数执行完后将返回主函数,然后在从原先暂停的位置继续执行。
     (2)函数调用形式:函数名 (实际参数表)(实际参数可以是常量、变量和表达式。)
              对于实现计算功能的函数,函数调用通常出现在两种情况下:
            a.赋值语句
                volume=cylinder(radius,height);
            b.输出函数的实参
                printf("%f",cylinder(radius,height));
    (3)参数传递
            a.函数定义时,位于其首部的参数称为形参。主调函数的参数被称为实参。
            b.程序运行遇到函数调用时,实参的值依次传给形参,这就是参数传递。
            c.形参必须是变量;实参可以是常量变量或表达式。
            d.形参与实参一一对应,数量应相同,顺序应一致。
    (4)函数结果返回
            a.形式:return  表达式;
            b.return语句作用:一是结束函数的运行,二是带着运算结果返回主调函数。
            c.return语句只能返回一个值。
    (5)函数原型声明
            a.一般格式:函数类型  函数名  (参数表);
            b.函数声明是一条C语句,而函数定义时的函数首部不是语句,后面不能跟分号。
            c.如果在调用函数前,既不定义,也不声明,程序编译时会出错。

3.不返回结果的函数

    (1)函数定义:
                void 函数名 (形参表)
                {
                    函数实现过程
                }
            例:
            、、、
                    void count_sum(int a, int b)
                    {
                    int count;
                    int sum;

                    count = 0;
                    sum = 0;
                    for (a; a <= b; a++)
                    {
	                if (is(a))
	                {
		            count++;
		            sum = sum + a;
	                 }
                    }
                    printf("count = %d, sum = %d", count, sum);
                    }
            、、、
     (2)在不返回结果的函数定义中,void不能省略;否则,函数类型被默认定义为int。

4.局部变量和全局变量

    (1)局部变量
            a.C语言中把定义在函数内部的变量称为局部变量。
            b.局部变量的有效作用范围局限于所在函数内部。
            c.局部变量一般定义在函数或复合语句的开始处,标准C规定不准定义在中间位置。
    (2)全局变量
            a.定义在函数外而不属于任何函数的变量称为全局变量。
            b.全局变量的作用范围从定义开始到程序所在文件的结束。
            c.一般情况下把全局变量定义在程序的最前面,即第一个函数的前面。

5.变量生存周期和静态局部变量

    (1)变量生存周期
            a.变量从定义开始分配存储单元,到运行结束存储单元被收回,整个过程称为变量生存周期。
            b.全局变量的生存周期为整个程序执行周期。
    (2)静态变量
            a.定义格式:static 类型名 变量表
            b.静态变量赋初值只在第一次调用时起作用,若没有赋初值,系统将自动赋0。

1.2 本章学习体会及代码量学习体会

1.2.1 学习体会

      1.代码逐渐变得复杂,代码量逐渐增大。
      2.上课讲的有点快,感觉跟不上节奏。
      3.对函数调用理解还不是特别清楚。
      4.函数名逐渐变多了。

1.2.2 代码累计

综合作业

题目:小学生口算表达式自动生成系统

2.本次作业的函数关系图

原文地址:https://www.cnblogs.com/201218zx/p/11788707.html