当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C++ div()用法及代码示例


C++ 中的div() 函数计算两个数相除的积分商和余数。

div() 函数在<cstdlib> 头文件中定义。

数学上,

quot * y + rem = x

div() 原型 [从 C++ 11 标准开始]

div_t div(int x, int y);
ldiv_t div(long x, long y);
lldiv_t div(long long x, long long y);

它接受两个参数 xy ,并返回 x 除以 y 的整数商和余数。

quot 是表达式 x/y 的结果。余数 rem 是表达式 x%y 的结果。

参数:

  • x :表示分子。
  • y :表示分母。

返回:

div() 函数返回 div_t , ldiv_tlldiv_t 类型的结构。这些结构中的每一个都包含两个成员:quotrem。它们定义如下:

div_t:
struct div_t {
	int quot;
	int rem;
};

ldiv_t:
struct ldiv_t {
	long quot;
	long rem;
};

lldiv_t:
struct lldiv_t {
	long long quot;
	long long rem;
};

示例:div() 函数如何在 C++ 中工作?

#include <iostream>
#include <cstdlib>
using namespace std;

int main()
{
	div_t result1 = div(51, 6);

	cout << "Quotient of 51/6 = " << result1.quot << endl;
	cout << "Remainder of 51/6 = " << result1.rem << endl;

	ldiv_t result2 = div(19237012L,251L);

	cout << "Quotient of 19237012L/251L = " << result2.quot << endl;
	cout << "Remainder of 19237012L/251L = " << result2.rem << endl;

	return 0;
}

运行程序时,输出将是:

Quotient of 51/6 = 8
Remainder of 51/6 = 3
Quotient of 19237012L/251L = 76641
Remainder of 19237012L/251L = 121

相关用法


注:本文由纯净天空筛选整理自 C++ div()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。