返回

函数(个人笔记,不喜勿喷)

发布时间:2022-12-24 20:34:16 334
  1. 库函数
  2. 自定义函数
  3. 函数参数
  4. 函数调用
  5. 递归函数


1.1库函数

C语言中常用的库函数有:

  • IO函数
  • 字符串操作函数
  • 字符操作函数
  • 内存操作函数
  • 时间/日期函数
  • 数学函数
  • 其他库函数

PS:这个网站可以帮你更好的学习库函数:

​​www.cplusplus.com​​ 

​​http://en.cppreference.com​​(英文版)

​​http://zh.cppreference.com​​(中文版)

注意:使用库函数,必须包含 #include 对应的头文件


1.2自定义函数

自定义函数和库函数一样,有函数名,返回值类型和函数参数。但是不一样的是这些都是我们自己来设计

举个例子:写一个函数可以找两个数的最大值

#include 

int get_max(int x, int y)
{
return (x > y) ? (x) : (y);
}
int main()
{
int a = 10;
int b = 20;
int max = get_max(a, b);
printf("max=%d\n", max);
return 0;
}

上面的get_max就是自己定义的函数


2函数的参数

  • 实际参数(实参):

真实传给函数的参数,叫实参。

实参可以是:常量、变量、表达式、函数等。

无论实参是何种类型的量,在进行函数调用时,它们都必须有确定的值,以便把这些值传送给形参。


  • 形式参数(形参):

形式参数是指函数名后括号中的变量,因为形式参数只有在函数被调用的过程中才实例化(分配内存单元),所以叫形式参数。

形式参数当函数调用完成之后就自动销毁了。因此形式参数只在函数中有 效。


3函数的调用
  • 传值调用:函数的形参和实参分别占有不同内存块,对形参的修改不会影响实参。


  • 传址调用:

传址调用是把函数外部创建变量的内存地址传递给函数参数的一种调用函数的方式。

这种传参方式可以让函数和函数外边的变量建立起真正的联系,也就是函数内部可以直接操 作函数外部的变量。


4递归函数

  • 什么是递归:

通常可以把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解的方法

只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量

递归的主要思考方式在于:把大事化小


  • 递归的两个必要条件:

存在限制条件,当满足这个限制条件的时候,递归便不再继续。

每次递归调用之后越来越接近这个限制条件。


举例:输入1234,输出1 2 3 4

#include 
void print(int n)
{
if (n > 9)//存在限制条件
{
print(n / 10);
}
printf("%d ", n % 10);
}
int main()
{
int num = 1234;
print(num);
return 0;
}

某些程序使用递归的方法可能导致栈溢出,这个时候可以用循环的方法代替



特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线
下一篇
小乐乐改数字题 2022-12-24 20:17:32