C++基础知识点+案例解释(第五集)

举报
迈热 发表于 2022/04/28 19:25:13 2022/04/28
【摘要】 C++基础知识点+案例解释(第五集)

📋个人简介

📜个人简介 :
🎅 作者简介:大家好,我是迈热✌️
🌝 支持一下:点赞👍+收藏🌟+留言📪
📣 系列专栏:java基础,C++基础🍁
✉️格言:先把键盘敲烂再说💻往死里敲!🌞

🌞学习前的小唠叨

🌈🌈哈喽 兄弟萌! 我们都在想成为大佬的路上加油着👍
既然我们已经踏入了学习这一长路, 那么就把它做的让
自己满意为止💜 加油兄弟萌!!!!😝

在这里插入图片描述

@[TOC](目录)

🍄 前言

🍊这期我们学习有关C++if-else基本性质的知识点和案例🍊

🐳案例一:求两个实型变量x和y差的绝对值

🌱🌱 绝对值是指一个数在数轴上所对应点到原点的距离叫做这个数的绝对值,绝对值用| |来表示。

🌱🌱 |a-b|表示a和b差的绝对值,即数轴上表示a的点和表示b的点的距离。若a>=b,则|a-b|=a-b;若a<b,则|a-b|=b-a。

💦1.1 案例一需求

  • 🍒🍒 需求:定义一个子函数,求两个实型变量x和y差的绝对值。即:输入实型变量x和y,若x>=y,则|x-y| = x-y;若x<y,则|x-y| = y-x。提醒:不允许使用系统函数fabs()。

  • 🍒🍒 案例思路:

    • 🌴 从键盘输入一个数
    • 🌴 定义一个子函数OddOrEven
    • 🌴 通过if-else方法来判断该数的奇偶性
    • 🌴 调用子函数OddOrEven
    • 🌴 输出返回结果

💦1.2 案例一代码演示

#include <iostream>
using namespace std;

// 输出实型变量x和y的差的绝对值
float SubtractionOperation(float x, float y)
{
    float a; 
    if(x>=y)
    {
        a=x-y;
    }
    else
    {
        a=y-x;
    }
}

int main()
{
    float x, y;

    // 从键盘输入两个数
	cout<<"请输入两个数:"<<endl; 
    cin >> x >> y;

    cout << SubtractionOperation(x,y) << endl;
}
			

💦1.3 案例一运行结果

  • 🍒🍒 编译结果:
    在这里插入图片描述

🐳案例二:逆序输出不超出100000的正整数的各位数字及其位数

🌱🌱所谓反序数,即有这样成对的数,其特点是其中一个数的各数字排列顺序完全颠倒过来,就变成另一个数,如102和201。简单的理解就是顺序相反的两个数,我们把这种成对的数互称为反序数。

🌱🌱 逆序输出一个正整数其实就是找到这个数的反序数并输出。

💦1.1 案例二需求

  • 🍒🍒 需求:定义一个子函数,在子函数中编写逆序输出不超出100000的正整数的各位数字及其位数

  • 🍒🍒 案例思路:

    • 🌴 从键盘输入一个不超出100000的正整数
    • 🌴 定义一个子函数Reverse
    • 🌴 通过子函数的算法来计算不超出100000的正整数的各位数字及其位数
    • 🌴 再去主函数调用我们的子函数Reverse
    • 🌴 输出结果

💦1.2 案例二代码演示

#include<iostream>
using namespace std;

void Reverse(int n)
{
    if(n>=10)
    {
        cout<<n%10;
        Reverse(n/10);
    }
    else
    {
        cout<<n;
    }
    
}
int main()
{
    int x;
    cout<<"请输入一个不超出100000的正整数:"<<endl;
    cin >> x;
    Reverse(x);
    int i=1;
    while(x/=10)
    {
        i++;
    }
    cout<<" "<<i;

}

💦1.3 案例二运行结果

  • 🍒🍒 编译结果:
    在这里插入图片描述

🐳案例三:判断命令行输入的五位正整数是否是回文

🌱🌱所谓回文数,是指像12321这样“对称”的数。即:将这个数的各位数字按相反的顺序重新排列后,所得到的数和原来的数一样。

💦1.1 案例三需求

  • 🍒🍒 需求:定义一个子函数,判断一个整数是否是2的幂
  • 🍒🍒 案例思路:
    • 🌴 从键盘输入的一个数
    • 🌴 在子函数IsPowerOfTwo中判断一个整数是否是2的幂
    • 🌴 调用子函数IsPowerOfTwo
    • 🌴 输出相应结果

💦1.2 案例三代码演示

#include <iostream>
using namespace std;

// 判断五位正整数是否是回文数
int PalindromeNumberJudge(int x)
{
    if(x<10000||x>99999)
        return 0;
    int ge=x%10;
    int shi=x%100/10;
    int bai=x%1000/100;
    int qian=x%10000/1000;
    int wan=x/10000;
    
    if((ge==wan)&&(shi==qian))
    {
        return 1;
    }
    else if((ge!=wan)||(shi!=qian))
    {
        return -1;
    }
    
}

int main()
{
    int x;

    // 从键盘输入一个五位正整数 
    cout<<"请输入一个五位正整数 :"<<endl;
    cin >> x;
 
    if (PalindromeNumberJudge(x) == 1)
    {
        cout << "该数是回文数!" << endl;
    }
    else if (PalindromeNumberJudge(x) == -1)
    {
        cout << "该数不是回文数!" << endl;
    }
    else
    {
        cout << "对不起,您输入的不是五位正整数!" << endl;
    }
}

💦1.3 案例三运行结果

  • 🍒🍒 该数不是回文数时:

在这里插入图片描述

  • 🍒🍒 当用户输入有误时(输入的不是五位数):

在这里插入图片描述

  • 🍒🍒 该数是回文数时:

在这里插入图片描述

💻 结语

🍻🍻到这我们的任务就结束啦!!!🌝
感谢大家的阅读 如果在内容方面有什么问题的话可以
在评论区或私信告诉我吧
博主小要求🙏🙏 如果这段对大家有用的话 就给博主
一个免费的点赞👍+评论✉️ +收藏💻吧!!!
感谢大家啦💙💙💙

在这里插入图片描述

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。