说起函数呀,就让我想起了高中的函数,想想都头疼,一个头俩个大,但是有些同学学起函数,我丢,那就是有手就行呀,老师都给他竖起大拇指,但是老铁们,他们是他们,我们是我们,如果我们基础知识有了学啥都会轻松起来,就像C语言的函数学起来是一样的,基础知识打牢,学起来就有底,对叭。那咱们就正式进入今天的主题---C语言函数。
首先C语言函数是什么,怎么使用C语言函数:
首先
其次
咱们上一个简单的代码:(输入两个数,输出最大的数,使用函数)
int max(int x, int y)
{
int max = 0;
max = (x > y ? x : y);
return max;
}
int main()
{
int a = 0;
int b = 0;
printf("请输入两个数:");
scanf("%d %d", &a, &b);
int ret = max(a, b);
printf("最大的数为:%d\n", ret);
return 0;
}
其次C语言函数应用:
①.函数的嵌套调用
什么是嵌套呢,在C语言函数的嵌套,大家都喜欢叫套娃,有的时候套着套着自己就绕进去了,,后期会有一个函数进阶,来正式谈谈函数,我们这里,点到为止,那我们又回来,什么是嵌套,顾名思义就是函数里调用其它函数。话不多说,上代码:
//实现输入三个整数,采用嵌套,利用两个函数,实现由小到大排序
#include<stdio.h>
void max2(int* i,int *j)
{
int tmp = 0;
tmp = *i;
*i = *j;
*j = tmp;
}
void max1(int *x, int *y, int *z)
{
if (x > y)
{
max2(x, y);
}
if (x > z)
{
max2(x, z);
}
if (y > z)
{
max2(y, z);
}
}
int main()
{
int a = 0;
int b = 0;
int c = 0;
printf("请输入三个整数:\n");
scanf("%d %d %d", &a, &b, &c);
max1(&a, &b, &c); //传入三个数的地址
printf("%d %d %d", a, b, c); //打印
return 0;
}
②.函数的递归调用
谈起递归,递归是直接或间接地调用函数本身
//打印1234 --> 1 2 3 4
#include<stdio.h>
int print(int a)
{
if (a > 9)
{
print(a / 10); //递归实现
}
printf("%d ", a % 10);
}
int main()
{
int a = 1234;
print(a);
return 0;
}
注意递归会消耗大量的内存,不建议用,能用循环就尽量使用循环
不知不觉就到了尾声呢,咱们第五章的知识点就到这里了啦,作为小白的我,可能写的不是很好,不对的地方还请大佬大佬指点指点。