参考:
- csdn,沓沓781,http://t.csdn.cn/HG47y
函数基础
定义一个函数
包括:返回类型、函数名称、形参列表、函数体
例如:
int sum(int n) { int sum=0; for(int i=0;i<n;i++) { sum+=i; } return sum; }
调用函数
调用函数主要完成两个任务:①给对应的形参赋值;②暂时中断主函数,执行被调用的函数
参数传递
传值参数
把变量值传给形参,此时,对形参的修改不会影响原变量的值
例如:
int max(int x, int y) { x=10,y=20; if(x>y) return x; return y; } int main(){ int a,b; cin>>a>>b; //输入:a=3,b=4 cout<<max(a,b)<<endl; cout<<a<<" "<<b; return 0; }
运行结果:
20
3 4
a,b的值都没有改变
引用传递参数
如果想引用的函数内部的值发生变化,外面的值随之改变,就需要加上引用符号“&”
例如:
int max(int &x, int &y) { x=10,y=20; if(x>y) return x; return y; } int main(){ int a,b; cin>>a>>b; //输入:a=3,b=4 cout<<max(a,b)<<endl; cout<<a<<" "<<b; return 0; }
运行结果:
20
10 20
数组形参
多维数组中,除了第一维之外,其他维度的大小必须指定
在函数中,对数组中的值的修改,会影响函数外面的数组(即为引用传递)
void output(int n, int m, int a[][3]) { for(int i=0; i<n; i++) { for(int j=0; j<m; j++) { cout<<a[i][j]<<" "; a[i][j]=1; //把数组里的所有数值都改成1 } cout<<endl; } } int main(){ int a[3][3]={ {1,2,3}, {4,5,6}, {7,8,9}, }; output(3,3,a); puts(" "); for(int i=0; i<3; i++) { for(int j=0; j<3; j++) { cout<<a[i][j]<<" "; } cout<<endl; } return 0; }
结果:
1 2 3
4 5 6
7 8 9
1 1 1
1 1 1
1 1 1
return语句作用
①相当于break,结束当前运行的函数;
②将控制权返还到调用该函数的地方
标签:10,20,函数,形参,int,基础,算法,return From: https://www.cnblogs.com/beiqiao-xiaoqiao/p/17102682.html