函数:
函数:
- 定义:实现特定功能的代码段。
- 三个要素:
(1) 功能。干嘛用的?
(2) 参数。我需要给它提供什么?
形参:定义函数的时候,() 中的内容
实参:调用函数的时候,() 中的内容
(3) 返回值。它会给我什么?不是所有的函数都有返回值。
- 参数传递:
(1) 实参传递给形参
(2) 参数要一一对应。类型,个数,顺序。
-
return 用来设置函数的返回值,它后边接的这个值,就是函数的返回值。
-
要点:与定义函数时的类型约定保持一致!
#include <stdio.h>
//void 这个关键字,就表明这个函数没有返回值
// 写一个函数,用来把一个给定的参数放大10倍
int times10(int n){
return 10 * n;
}
int main(){
int rst = times10(5);
printf("%d", rst);
return 0;
}
结果如下:
例题1:
写一个函数,功能: 计算两个整数中的较大值,并返回。
#include <stdio.h>
int getBigger(int x,int y){
return x > y ? x : y;
}
int main(){
int rst = getBigger(10,20);
printf("%d",rst);
}
结果如下:
例题2:
写一个函数,用来求三个整数中的较大值,并返回。
#include <stdio.h>
int getBiggest(int a,int b,int c){
if(a>=b && a>=c){
return a;
}
else if(b>=a && b>=c){
return b;
}
esle {
return c;
}
}
int main(){
int rst = getBiggest(10,20,3);
printf("%d",rst);
}
结果如下:
return:
return 的作用:
1.设置函数的返回值,它后面的表达式的值就是当前函数的返回值。
2.结束后面代码的执行 函数运行到此为止,它后边的代码都不会执行!
#include <stdlib.h>
int f(){
printf("a");
printf("b");
printf("c");
return 10 + 3 - 90 * 200;
}
int main(){
int rst =f();
printf("%d",rst);
return 0;
}
结果如下:
调用方式:
有4种调用方式:
- 将函数作为表达式调用
- 作为语句调用
- 作为函数的实参调用
- 在一个函数中调用另一个函数
注意:函数有三个要素:功能,参数,返回值。
示例如下:
#include <stdlib.h>
int geiBig2(int a,int b){
if(a>b){
return a;
}else{
return b;
}
}
int getBig3(int x,int y,int z){
// 大者1:求x,y的较大者
// 求大者1 和 z 的较大者
// int k = getBig2(x,y);//4. 在一个函数中调用另一个函数
// return getBig2(k,z);
return getBig2(getBig2(x,y),z);
}
int f32(int n){
return n / 3 + 1;
}
void printfOK(){
printf("\n****************************\n");
printf("****************************\n");
printf("****************************\n");
}
int main(){
printf("%d",getBig3(1,2,3));
printfOK();
int rst = f32(10) + 20;
printf
}