中国科学技术大学:《C++语言程序设计》课程教学资源(讲义)第三章 函数

C++语言程序设计 第三章丞数 中国科大黄章进
第三章 函数 中国科大 黄章进 C++语言程序设计

C++语言程序设计 本章主要内容 ·函数的定义和调用 ·函数间的参数传递 ●内联函数 ·带默认形参值的函数 ·函数重载 C++系统函数 ·深度探索
C++语言程序设计 2 本章主要内容 函数的定义和调用 函数间的参数传递 内联函数 带默认形参值的函数 函数重载 C++系统函数 深度探索

C++语言程序设计 国数的定义 成 数 的 ● 函数是面向对象程序设计中,对功能的 声 抽象 明·函数定义的语法形式 与 类型标识符函数名(形式参数表) 使 用 语句序列 是被初始化的内部 变量,寿命和可见 性仅限于函数内部 若无返回值,写void
C++语言程序设计 3 函数的定义 函数是面向对象程序设计中,对功能的 抽象 函数定义的语法形式 类型标识符 函数名(形式参数表) { 语句序列 } 函数的声明与使用 是被初始化的内部 变量,寿命和可见 性仅限于函数内部 若无返回值,写void

C++语言程序设计 数的定义 函 数 的 形式参数表 声 name, name2, 明 〈typen>namen 与 ● 函数的返回值 使 由return语句给出,例如: 用 return 0 无返回值的函数(void类型),不必写 return语句
C++语言程序设计 4 函数的定义 形式参数表 name1, name2, ..., namen 函数的返回值 –由 return 语句给出,例如: return 0 –无返回值的函数(void类型),不必写 return语句。 函数的声明与使用

C++语言程序设计 函数的调用 函 数 ● 调用前先声明函数: 的 若函数定义在调用点之前,则无需另外声 声 明 若函数定义在调用点之后,则需要在调用 函数前按如下形式声明函数原型: 与 类型标识符被调用函数名(含类型说明的形参表); 使 调用形式 用 函数名(实参列表) ● 嵌套调用 ● 函数可以嵌套调用,但不允许嵌套定狄米 递归调用 函数直接或间接调用自身
C++语言程序设计 5 函数的调用 调用前先声明函数: –若函数定义在调用点之前,则无需另外声 明; –若函数定义在调用点之后,则需要在调用 函数前按如下形式声明函数原型: 类型标识符 被调用函数名(含类型说明的形参表); 调用形式 函数名(实参列表) 嵌套调用 –函数可以嵌套调用,但不允许嵌套定义。 递归调用 –函数直接或间接调用自身。 函数的声明与使用

C++语言程序设计 例3-1编写个求X的次方的函数 函 数 #include 的 using namespace std; 声 计算x的n次方 double power(double x,int n){ 明 double val =1.0; while (n-- val *=x; 与 return val 使 用 int main() cout < "5 to the power 2 is <power (5,2)<<endl; return 0;
C++语言程序设计 6 例3-1编写一个求x的n次方的函数 #include using namespace std; //计算x的n次方 double power(double x, int n) { double val = 1.0; while (n--) val *= x; return val; } int main() { cout << "5 to the power 2 is " << power(5, 2) << endl; return 0; } 函数的声明与使用

C++语言程序设计 例3-1编写一个求X的n次方的函数 函 数 的 声 运行结果: 与 5 to the power 2 is 25 使
C++语言程序设计 7 运行结果: 5 to the power 2 is 25 函数的声明与使用 例3-1编写一个求x的n次方的函数

C++语言程序设计 函 例3-2数制转换 数 的 题目: 声 明 输入一个8位二进制数,将其转换 与 为十进制数输出。 使 例如: 用 1101,=1(23)+1(22)+0(2)+1(2)=1310 所以,如果输入1101,则应输出米
C++语言程序设计 8 例3-2 数制转换 题目: 输入一个8位二进制数,将其转换 为十进制数输出。 例如: 11012=1(23)+1(22)+0(21)+1(20)=1310 所以,如果输入1101,则应输出13 函数的声明与使用

#include using namespace std; 计算x的n次方 double power (double x,int n); int main(){ int value =0; fo (int nte;an inry number cout〈ch; if"(ch 1) value +static cast(power(2,i)); cout "Decimal value is "<value <endl; return 0; double power (double x,int n){ double val 1.0; while (n--) 运行结果: val*=x; return val; 6册t8io8册8 bit binarynbe Decimal value is 105
#include using namespace std; //计算x的n次方 double power (double x, int n); int main() { int value = 0; cout = 0; i--) { char ch; cin >> ch; if (ch == '1') value += static_cast(power(2, i)); } cout << "Decimal value is " << value << endl; return 0; } double power (double x, int n) { double val = 1.0; while (n--) val *= x; return val; } 运行结果: Enter an 8 bit binary number 01101001 Decimal value is 105 9

C++语言程序设计 函 例33编写程序求T的值 数 的 π=l6 arctan 4 arctan 声 5 239 明 其中arctan用如下形式的级数计算: 与 使 X .x5x7 arctanx=x- 用 357 十·· 直到级数某项绝对值不大于10-15为止; π和x均为double型
C++语言程序设计 10 例3-3编写程序求π的值 其中arctan用如下形式的级数计算: 直到级数某项绝对值不大于10-15为止; π和x均为double型。 函数的声明与使用 − = 239 1 4arctan 5 1 π 16arctan 357 arctan 357 xxx x x =− + − +
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 中国科学技术大学:《C++语言程序设计》课程教学资源(讲义)第二章 C++简单程序设计.pdf
- 中国科学技术大学:《C++语言程序设计》课程教学资源(讲义)C++语言漫谈.pdf
- 中国科学技术大学:《C++语言程序设计》课程教学资源(讲义)第一章 绪论(主讲:黄章进).pdf
- 中国科学技术大学:《C++语言程序设计》课程教学资源(复习提纲,主讲:黄章进).pdf
- 《C++程序设计》课程教学资源(参考资料)C++ Programming ISO/IEC 14882 C++11(规范)Information technology — Programming languages — C++.pdf
- 《C++程序设计》课程教学资源(参考资料)C++ Programming ISO/IEC 14882 2003(规范文档)INTERNATIONAL STANDARD(Second edition).pdf
- 中国科学技术大学:单变量均匀静态细分格式的连续性分析和构造 Continuity Analysis and Construction of Uniform Stationary Univariate Subdivision Schemes.pdf
- 中国科学技术大学:NEW PROOF OF DIMENSION FORMULA OF SPLINE SPACES OVER T-MESHES VIA SMOOTHING COFACTORS.pdf
- 中国科学技术大学:JOURNAL OF UNIVERSITY OF SCIENCE AND TECHNOLOGY OF CHINA.pdf
- 中国科学技术大学:一类多参数的曲线细分格式.pdf
- 中国科学技术大学:Estimating Error Bounds and Subdivision Depths for Loop Subdivision Surfaces.pdf
- 中国科学技术大学:An Efficient Approach to Real-Time Sky Simulation.pdf
- 中国科学技术大学:Bounding the Distance between a Loop Subdivision Surface and Its Limit Mesh.pdf
- 中国科学技术大学:Bounding the Distance between a Loop Subdivision Surface and Its Limit Mesh.pdf
- 中国科学技术大学:A bound on the approximation of a Catmull-Clark subdivision surface by its limit mesh.pdf
- 中国科学技术大学:Full Camera Calibration from a Single View of Planar Scene.pdf
- 中国科学技术大学:Extended Doo-Sabin Surfaces.pdf
- 中国科学技术大学:Distance Between a Catmull-Clark Subdivision Surface and Its Limit Mesh.pdf
- 中国科学技术大学:Distance Between a Catmull-Clark Subdivision Surface and Its Limit Mesh.ppt
- 中国科学技术大学:Non-Uniform Recursive Doo-Sabin Surfaces.pdf
- 中国科学技术大学:《C++语言程序设计》课程教学资源(讲义)第六章 数组、指针与字符串.pdf
- 中国科学技术大学:《C++语言程序设计》课程教学资源(讲义)第四章 类与对象.pdf
- 中国科学技术大学:《C++语言程序设计》课程教学资源(讲义)第五章 数据的共享与保护.pdf
- 中国科学技术大学:《C++语言程序设计》课程教学资源(讲义)第八章 多态性.pdf
- 中国科学技术大学:《C++语言程序设计》课程教学资源(讲义)第七章 继承与派生.pdf
- 中国科学技术大学:《C++语言程序设计》课程教学资源(讲义)第九章 群体类和群体数据的组织.pdf
- 中国科学技术大学:《C++语言程序设计》课程教学资源(讲义)第十章 C++标准模板库.pdf
- 中国科学技术大学:《C++语言程序设计》课程教学资源(讲义)第十一章 流类库与输入输出.pdf
- 中国科学技术大学:《C++语言程序设计》课程教学资源(讲义)第十二章 异常处理.pdf
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第一章 绪论(主讲:郑莉).ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第十章 C++标准模板库.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第十一章 流类库与输入/输出.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第十二章 异常处理.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第二章 C++简单程序设计.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第三章 函数.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第四章 类与对象.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第五章 C++程序的结构.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第六章 数组、指针与字符串.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第七章 继承与派生.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第八章 多态性.ppt