C++(11): 取模运算符 %

目录

1. 基本定义

2. 代码实例

示例 1:基础用法

示例 2:判断奇偶性

示例 3:周期性操作(每 5 次换行)

3. 注意事项

4. 典型应用场景

总结表格

1. 基本定义

  • 作用:取模运算符 % 返回两个整数相除后的余数。

  • 语法result = dividend % divisor;

  • 规则

    • 若 dividend 能被 divisor 整除,结果为 0(例如 15 % 5 = 0)。

    • 余数的符号与 dividend(被除数)一致(例如 -10 % 3 = -1)。


2. 代码实例

示例 1:基础用法
#include <iostream>
using namespace std;

int main()
 {
    int B = 15, A = 5;
    cout << B << " % " << A << " = " << B % A << endl;  // 输出:15 % 5 = 0

    int C = 10, D = 3;
    cout << C << " % " << D << " = " << C % D << endl;  // 输出:10 % 3 = 1

    return 0;
}

示例 2:判断奇偶性
int num = 7;
if (num % 2 == 0) 
{
    cout << num << " 是偶数" << endl;
} else 
{
    cout << num << " 是奇数" << endl;  // 输出:7 是奇数
}
示例 3:周期性操作(每 5 次换行)
for (int i = 1; i <= 10; i++) 
{
    cout << i << " ";
    if (i % 5 == 0) 
    {
        cout << endl;  // 输出:1 2 3 4 5 \n6 7 8 9 10
    }
}


3. 注意事项

  1. 操作数必须为整数

    // double x = 10.5, y = 3.0;
    // cout << x % y;  // 错误:% 不能用于浮点数
  2. 除数不能为 0

    int E = 5, F = 0;
    // cout << E % F;  // 运行时错误:除数为 0
  3. 负数取模规则

    cout << -10 % 3 << endl;   // 输出:-1(余数符号与被除数一致)
    cout << 10 % -3 << endl;   // 输出:1

4. 典型应用场景

  1. 循环队列索引

    int index = (current_index + 1) % buffer_size; // 环形缓冲区
  2. 哈希函数

    int hash = key % TABLE_SIZE; // 简单哈希映射
  3. 时间转换

    int total_seconds = 7265;
    int minutes = total_seconds / 60;  // 121 分钟
    int seconds = total_seconds % 60;  // 5 秒

总结表格

表达式结果说明
15 % 50被除数能被除数整除
10 % 31常规余数计算
-10 % 3-1余数符号与被除数一致
10 % -31余数符号仍与被除数一致
5 % 0错误除数为 0 会导致运行时错误
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

易只轻松熊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值