C博客作业03--函数

0.展示PTA总分

1.本章学习总结

  • 函数的功能
    • 接收数据。
    • 对接收的数据进行处理。
    • 将数据处理的结果返回或者不返回。
  • 函数的声明
    • 如果函数的定义在函数的调用的后边则要进行函数声明,如果函数的定义在函数调用之前则不用声明。
    • 函数声明如下:
int max(int a,int b);
  • 函数的定义
函数类型 函数名称 (形式参数)
{
  语句1;
  语句2;
  ……
}
  • 函数的调用
函数名 (实际参数表)
- 函数调用通常用于赋值语句和输出函数的实参。
  • 一个函数调用另一个函数所具备的条件
    • 首先被调用的函数必须是已经存在的函数。
    • 如果使用自己定义的函数,而且该函数与使用它的函数在同一文件中,一般还应该在主调函数中对被调函数做声明。
    • 如果已在所有函数定义之前,在函数的外部已经做了声明,则在各个主调函数中不必过多对所调用函数做声明。
  • 需要注意的地方
    • 函数不可以嵌套定义,但是可以嵌套调用。
    • 函数名必须是由字母、数字、下划线组成,但只能由字母开头。
    • 函数的类型和参数类型可以是其他类型,比如float,double型等,函数的类型还可以是void型,这种类型的函数不需要return语句返回值。
    • 库函数由系统提供,包含相应的头文件,即可调用,比如printf函数和scanf函数,在包含了stdio.h头文件后就可以使用,而自定义函数是我们自己创造的函数。
  • 形参和实参
    • 实参可以是常量、变量或者表达式。
    • 形参必须是变量,用于接受实参传递过来的值。
    • 实参和形参必须一一对应,两者数量相同,类型尽量一致。
    • 实参变量对形参变量的数据传递是“值传递”,即单向传递,只有实参传递给形参,而不能形参传递给实参。
    • 在定义函数中指定的形参,在未出现函数调用时,不占用内存中的储存单元,只有发生调用时,才会分配内存。
  • 函数的返回值
    • 函数类型为void,表示不返回结果。
    • 函数的返回值通过函数中的return语句获取。
    • 如果函数值的类型和return语句中的表达式不一样,则以函数类型为准。
    • 在不返回结果的函数定义中,void不能省略,否则函数类型被默认为int。
  • 局部变量
    • 定义在函数内部的变量称为局部变量,其有效范围局限于所在函数内部。
    • 使用局部变量可以避免各个函数之间的变量相互干扰。
    • 作用于复合语句中的局部变量,其有效范围被局限于复合语句内,一般用作小范围内的临时变量。
  • 全局变量
    • 定义在函数外而不属于任何函数的变量称为全局变量。
    • 一般情况下把全局变量定义在程序的最前面,即第一个函数前面。
    • 当某函数的局部变量与全局变量同名时,在该函数中全局变量不起作用,而由局部变量起作用。
    • 全局变量的作用范围是从定义开始到程序所在文件的结束,它对作用范围内所有的函数都起作用。
    • 全局变量虽然可以用于多个函数之间的数据交流,但一般情况下,应尽量使用局部变量和函数参数。

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

1.2.1学习体会

- 学习了本章函数,更让我深入了解到学习C语言主要是靠自己的逻辑思维通过一些关键字,语法和库函数来组织或构造一个完整的函数,所以锻炼我们的抽象逻辑思维能力特别重要,要想提高自己的编程能力,以我目前的代码量是远远不够的,还需要坚持反复勤加练习。
- 这两周代码量为1200行左右。

2.综合作业

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

3.函数功能及全局变量介绍

  • Welcome()函数

  • IntoMemu()函数

  • GetCalculation()函数

  • 主函数

3.1全局变量

3.2ListMenu()函数

4.运行结果截图,测试用例

5.大作业总结

  • 我感觉这次大作业对我来说很复杂,因为我完全没有思路,真的不会写,写的时候完全不知道要做什么,感觉无从下手,特别地绝望,肯定是我水平不够,没有一点编程基础。造函数的时候思路很混乱,制造了几个函数后面却不知道有什么用,感觉没有一点逻辑思维。然后,我花了大量时间却未能完成本次作业,效率非常低,质量也很差,也说明了我的基础真的很差,代码量远远不够。通过这次大作业我也明白了自己编程的薄弱,更需要花更多的时间来学习。![]
原文地址:https://www.cnblogs.com/4-Real/p/11729769.html