信息学奥赛之c++语法(二十二)函数

网友投稿 2018-12-09 20:55

简而言之,函数就是把具有相同功能特点的一段代码写成一个功能,一个函数就是一个功能,我们常将一个庞大复杂的程序拆分成若干个小函数来实现。像我们上节课用的swap()就是一个将两个变量数值交换的函数。一个程序中可以包含若干个函数。但main()函数有且只能有一个。在执行时main()函数可以调用其他函数,其函数之间也能相互调用,但其他函数不能调用main()函数。

函数有两种,一种是系统函数,另一种是用户自己编写的函数,即自定义函数。与之相关的概念还有返回类型和参数,下面通过实例讲解:

写一个放大输出的程序,由用户输入一个字符c和一个倍值n,输出n个c。

#include 

using namespace std;

void out(char c,int n){

for(int i=0;i< p="">

cout<<c;< p="">

}

}

int main()

{

char c;

int n;

cin >>c>>n;

out(c,n); 

return 0;

}

out为函数名称,左边为返回类型,void代表无返回值,out()括号内为函数所需的参数,需要声明参数类型和参数变量名,调用的时候也要传入相应的数据类型。参数可以包括0个或多个。需要注意的是,上例函数中的参数out(char c,int n)和main()函数中的变量c、n不是同一个变量,只是同名而已。变量有全局变量和局部变量,声明在各函数体内的变量为局部变量,只限函数内部使用,不同函数之间是可以有同名的变量。

再来看一个有返回值的函数:求两个数平方和的函数。

#include 

using namespace std;

int sum(int a,int b){

return a*a+b*b;

}

int main()

{

int n,m;

cin >>n>>m;

int s = sum(n,m); 

cout<<s<<endl;< p="">

return 0;

}

求和函数sum()返回类型是int型,通过return语句将结果返回给调用的程序,调用语句int s = sum(n,m)用int型变量s来接收返回结果,当然你也可以不用变量接收,函数依然会照常执行。

--end--

声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com