【C++ Primer】 第六章 函数基础

函数基础

练习

练习6.6

 1 #include<iostream>
 2 using namespace std;
 3
 4 double myADD(double num1, double num2)
 5 {
 6     double result = num1 + num2;
 7     static unsigned iCnt = 0;
 8     ++iCnt;
 9     cout << "该函数累计执行了" << iCnt << "次" << endl;
10     return result;
11 }
12
13 int main()
14 {
15     double num1, num2;
16     cout << "请输入两个数:";
17     while (cin >> num1 >> num2)
18     {
19         cout << num1 << "与" << num2 << "的求和结果:"
20             << myADD(num1, num2) << endl;
21     }
22     return 0;
23 }

运行结果:

练习6.7

 1 #include<iostream>
 2 using namespace std;
 3
 4 unsigned myCnt()
 5 {
 6     static unsigned iCnt = -1;
 7     ++iCnt;
 8     return iCnt;
 9 }
10 int main()
11 {
12     cout << "请输入任意字符按回车键任意键" << endl;
13     char ch;
14     while (cin >> ch)
15     {
16         cout << "函数myCnt的执行次数:" << myCnt() << endl;
17     }
18     return 0;
19 }

参数传递

•使用引用避免拷贝

bool isShorter(const string &s1, const string &s2)
{
    return s1.siz2() < s2.size();
}

•使用引用形参返回额外信息

//返回s中c第一次出现的位置
//引用形参occurs负责统计c出现的次数
string::size_type find_char(const string &s, char c, string::size_type &occurs)
{
    auto ret = s.size();
    occurs = 0
    for(decltype(ret) i = 0; i != size(), ++i)
    {
        if(s[i] == c)
        {
            if(ret == s.size())
                ret = i;
            ++occurs;
        }
    }
    return ret;
}

auto = find_char(s, ‘o‘, ctr);

练习

练习6.11

 1 #include<iostream>
 2 using namespace std;
 3
 4 int reset(int &i)
 5 {
 6     i = 0;
 7     return i;
 8 }
 9
10 int main()
11 {
12     int num = 10;
13     cout << "重置前:num = " << num << endl;
14     reset(num);
15     cout << "重置后:num = " << num << endl;
16     return 0;
17 }

 

 

原文地址:https://www.cnblogs.com/sunbines/p/8715703.html

时间: 2024-08-06 21:17:35

【C++ Primer】 第六章 函数基础的相关文章

《Python 学习手册4th》 第十六章 函数基础

''' 时间: 9月5日 - 9月30日 要求: 1. 书本内容总结归纳,整理在博客园笔记上传 2. 完成所有课后习题 注:“#” 后加的是备注内容 (每天看42页内容,可以保证月底看完此书) “重点笔记”“本章习题” - 标题1,二级标题用- 标题2,笔记大纲标题.习题题目- 加粗,16px ''' 重点笔记 摘要 函数是Python为了代码最大程度的重用和最小化代码冗余而提供的最基本的程序结构.一. 为何使用函数 最大化的代码重用和最小化代码冗余 流程的分解 本章习题: 1. 编写函数有什么

第十六章 函数基础

#1. #A:python的def语句实际上是一个可执行语句,当他运行的时候,它创建一个新的函数对象并将其赋值给一个变量名 #B:因为def语句是一个语句,所以一个def可以出现在任一语句可以出现的地方,比如说嵌套在其他的语句中 #C:函数除了调用以外,还允许任意的属性附加到记录信息,以供使用 def FunA(Value): if Value: def FunB() : return 10 else: def FunB() : return 20 return 10 + FunB() b0 =

从思维导图中学习javascript第六章函数基础

(转载)虚幻引擎3--第六章 –函数

第六章 –函数 6.1概述 指南 6.1环境生物, 第一部分:基类声明 指南 6.2 环境生物, 第二部分:类的变量声明 指南 6.3 环境生物,第三部分:渲染及光照组件 指南 6.4 环境生物, 第四部分:碰撞及物理属性 6.2 函数声明 指南 6.5 环境生物, 第五部分: SETRANDDEST() 函数 6.3函数修饰符 Static Native Final Singular NoExport Exec Latent Iterator Simulated Server Client R

第六章函数和宏定义

C程序设计实验报告 实验项目: 第六章函数和宏定义 姓名:李儿龙  实验地点:514教室 实验时间:5.16 一.实验目的与要求 1.模块化程序设计: 6.4.2.2. 利用复化梯形公式计算定积分 掌握C语言中定义函数的方法: 掌握通过“值传递”调用函数的方法. 6.4.2.3. 计算Ackerman函数 掌握递归函数的设计方法: 进一步练习阅读检查与调试修改C程序的方法. 6.4.3.1. 编写计算x的y次幂的递归函数getpower(int x,int y),并在主程序中实现输入输出 写出该

【WPF学习】第三十六章 样式基础

原文:[WPF学习]第三十六章 样式基础 前面三章介绍了WPF资源系统,使用资源可在一个地方定义对象而在整个标记中重用他们.尽管可使用资源存储各种对象,但使用资源最常见的原因之一是通过他们的保存样式. 样式是可应用于元素的属性值集合.WPF样式系统与HTML标记中的层叠样式表(Cascading Style Sheet,CSS)标准担当类似的角色.与CSS类似,通过WPF样式可定义通用的格式化特性集合,并且为了保证一致性,在整个应用程序中应用他们.与CSS一样,WPF样式也能够自动工作,指定具体

C++ Primer中文版(第五版)——第六章 函数

6.1函数基础 一个典型的函数定义包括以下几个部分:返回类型(return type).函数名字.由0个或多个形参组成的参数列表以及函数体.其中,形参以逗号隔开,形参的列表位于一对圆括号之内.函数执行的操作在语句块中说明,该语句块称为函数体. 我们通过调用运算符(call operator)来执行函数.调用运算符的形式是一对圆括号,它作用于一个表达式,该表达式是函数或者是指向函数的指针:圆括号之内是一个用逗号隔开的实参列表,我们用实参初始化函数的形参.调用表达式的类型就是函数的返回类型. 编写函

《Python学习手册 第五版》 -第16章 函数基础

前面的章节讲解的是一些基础数据类型.基本语句使用和一些文档查看的内容,这些都是一些基础,其实还谈不上入门,只有了解了函数,才算入门 函数是编程里面使用最多的也是最基本的程序结构, 本章重点内容 1.函数 1)什么是函数? 2)为什么使用函数? 2.编写函数 1)函数的基本格式 2)定义和调用函数 3)函数的多态.局部变量 接下来针对本章重点,展开详细的说明 1.函数 1)什么是函数? 这里没有严格的定义,用通俗易懂的方式来说: 函数就是将一些语句集合在一起的组件,从而让他们能够不止一次的在程序中

C++ primer 第六章笔记

Chapter 6 函数 #函数基础 声明:返回类型.函数名.形参列表.分号 定义:返回类型.函数名.形参列表.函数体 调用:函数或函数指针,实参列表 #参数传递 1.形参是引用类型,它将绑定到对应的实参上.  否则,将实参的值拷贝后赋给形参; 2.C++,建议使用引用类型的形参代替指针; //传引用参数 void reset(int &i){ i = 0; } int j = 24; reset(j); cout << j << endl; //输出是0; 3.使用引用,