信息学奥赛之c++语法(二十二)函数
简而言之,函数就是把具有相同功能特点的一段代码写成一个功能,一个函数就是一个功能,我们常将一个庞大复杂的程序拆分成若干个小函数来实现。像我们上节课用的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