我们已经完成了C++流程控制语句的学习,接下来我们要学学函数的定义和运用。
1. 子函数。
对于子函数,其实并不陌生,我们经常使用的类如abs(),pow(),sqrt()等等。但这些系统定义的函数并不能满足我们的要求,所以我们会运用多种函数来创造,但如果我们把这些代码都写在主程序就会导致主程序过于臃肿庞大,不利于阅读和校正。
让我们来学习一下如何写主程序,先从最简单的MAX函数(判断两个数大小,并输出最大数)开始。
开头还是要先定义一下要调用的函数
#include<iostream>
using namespace std;
子函数:
float max(float x,float y)
{
return(x>y?x:y);
}
Float max(float x,float y)注意:不能写成(float x, y)
Float 是在定义函数输出的max的类型。
而(floatx,float y)则是函数定义读入的两个变量的类型。
跟主程序一样,子函数的程序需要{ }括起来。
return(x>y?x:y);
return是子函数处理数据后返回主程序的语句
x>y?x:y 就是判断两个数大小的语句。
那主函数如何写和调用呢?
void main(void)
{
int a,b;
cout<<"请输入两个数,输出最大数。";
cin>>a>>b;
cout<<max(a,b)<<endl;
}
max(a,b)就是调用子程序max的语句。
可能你会有疑问为什么主程序max(a,b)和子函数max(floatx,float y)的变量(a,b)和(x,y)不同。
(a,b)是在主程序中定义,和读入的变量,而(x,y)则像接力一样,(a,b)把他们的值复制给(x,y)。这样做的目的是防止混淆,或可能导致(a,b)的值发生改变。
要先定义,后调用。
今天就写到这里吧,鄙人明天后天要出门,心得就写不了了,实在对不起,请见谅。
顺便给大家推荐个在线练题网Online Judge System For SzNOI
http://oi.sipxhsy.cn:8080/oj/Problems?&page=1
平时一定要坚持练哦!大家加油哦!