C++学习笔记系列2-4
题目:
封装一个函数,通过我们传入的一个 int 型数值,判断是“奇数”,还是“偶数”,并输出
分析:
1、数学层面:被 2 整除,是偶数,反之,奇数
2、代码层面:我们可以将题目要求抽象为:非黑即白的二元对立。
算术运算符中的“取余”(%),它的计算特点非常适合这个题目
再根据“非黑即白”的特点,可以翻译为:如果(if)。。。要不(else)
那么代码的逻辑,基本就确定了。
3、函数声明、定义:
返回类型:需要返回值,因为结果就两种,所以返回类型使用 bool;
函数名称:PanDuanJiOu,即:判断奇偶;
参数列表:int ,传入一个整数。
按上面的描述,声明函数,如下:
bool PanDuanJiOu(int value)// 编辑函数体内容
{
// 通过对传入的 value 进行“取余”运算,如果余数为:0,则表示value是偶数
if(value % 2 == 0){
// 如果满足条件则返回:true,并结束判断
return true;
}
else
{
// 进到else中,则表明value是奇数,所以返回 false
return false;
}
}
// 函数定义完毕
进入主程序中
int main()
{
// 因为函数的返回类型为:bool,所以我们要声明一个bool变量接收它的结果
bool b1 = PanDuanJiOu(20);
// 此时 b1 肯定是 true;下面我们使用三目运算符进行逻辑处理
string str1 = b1 ? “偶数” :“奇数”;
cout << str1 << endl;
bool b2 = PanDuanJiOu(21); // 此时 b2 肯定是 false
string str2 = b2 ? “偶数” :“奇数”;
cout << str2 << endl;
}
输出结果:偶数 奇数
复盘案例
1、封装了一个返回值类型为:bool ,参数类型为:int 的函数,通过这个细节发现:返回类型和参数类型是无关的,使用什么类型的参数,返回什么类型的返回值,完全是由需求决定的;
2、在函数内部,使用了 if...else 语句进行了参数的判断,满足不同条件返回不同结果;
3、取余运算符,用于条件的运算;
4、最终函数输出为一个 bool 类型的结果,在主函数中用 bool 类型变量容器接收;
5、通过三目运算符选择匹配的字符串,作为最终的输出结果。
更多推荐

所有评论(0)