- 1、本文档共174页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[IT认证]C第45章数组与函数人民邮电出版北科大
C++程序设计;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;存储顺序
按行存放,上例中数组a的存储顺序为:;声明6个C++班的学生,每个课堂学生数目不超过30人;
;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;C++大学基础教程;5.1 函数概述
5.2 函数定义及调用
5.3 C++中的特殊函数
5.4 函数模板(不要求)
5.5 局部变量和全局变量
5.6 变量的生存期和存储类别
5.7 编译预处理(自学) ;5.1 函数概述;一般是将整个程序分为若干个程序模块
每个模块用来实现一个特定的的功能
这就是结构化程序设计的思想!
C++中模块的实现
函数
类
函数是具有一定功能又经常使用的相对独立的代码段;【例】 ;;⑴ 一个C++源程序可以由一个或多个源程序文件组成。C++编译系统在对C++源程序进行编译时是以文件为单位进行的。
⑵ 一个C++源程序文件可以由一个或多个函数组成。所有函数都是独立的。主函数可以调用其它函数,其它函数可以相互调用。
⑶ 在一个C++程序中,有且仅有一个主函数main。C++序的执行总是从main函数开始,调用其它函数后最终回到main函数,在main函数中结束整个程序的运行。;5.1.2 函数的种类;库函数:由C++编译系统定义的一种函数,存放在系统函数库中,用户可以根据需要随时调用
常用函数
如:fabs、sqrt、sin、pow、rand
(常用数学函数参见教材附录 )
函数调用形式:
函数名([参数表])
例如: sqrt(x);数学函数库中的多数函数都返回double类型结果。
使用数学库函数,需要在程序中包含math.h头文件,这个头文件在新的C++标准库中称为cmath。
函数参数可取常量、变量或表达式。
例: 如果c=13.0、d=3.0和f=4.0,则下列语句:
coutsqrt(c+d*f);
计算并显示13.0+3.0*4.0=25.0的平方根,即5.0。 ;5.2.1 函数的定义;程序如下:
#include iostream
using namespace std;
int cube(int y); //函数原型声明
int main()
{
int x;
cinx;
coutx的立方是: cube(x)endl;
return 0;
};函数名(实参表列);void swap(int x, int y)
{ int z;
z=x; x=y; y=z;
……
}
int main()
{ int a=100,b=200;
swap(a,b);
……
return 0; };有关形参和实参的说明: ;;(2)地址传递;【例5-4】冒泡排序算法;【例5-4】用冒泡法将10个整数排序。;int main()
{
int a[10] = {10,21,62,96,57,81,44,31,72,35};
cout排序前:endl;
printarr(a);
sort(a,10);
cout排序后:endl;
printarr(a);
return 0;
};主函数调用sort函数时,将实参a传递给形参b。假设a数组的首地址是3000,则b数组的首地址也是3000。在sort函数中对b数组中的10个数排序后,b数组中元素的值发生了变化,实际上a数组的值也随之发生变化。;2.函数的类型和返回值;函数的返回值是通过return语句带回到主调函数的;【例5-5】计算并输出圆的面积。;;【例】函数的嵌套调用。;【例5-7】编程求;;5.2.5函数原型 ;函数原型 ;函数原型 ;函数原型 ;函数原型 ;函数原型 ;void subfun1(…);//原型声明
int main()
{
┆
subfun1(…);//函数调用
┆
}
void subfun2()
{
┆
subfun1(…);//函数调用
┆
}
void subfun1(…)//函数定义
{
…
};-*-;int main()
{ float calc(float x,float y,char opr);
float a,b; char opr;
cout输入四则运算表达式:;
cinaoprb;
if(opr==+||opr==-||opr==*||opr==/)
c
文档评论(0)