洛谷B2001讲解

文章介绍了在C++编程中处理大整数(如longlong)时如何进行加法运算,特别强调了整数除法的特性,以及如何通过转换为浮点类型实现精确除法。同时讨论了C++的基本运算顺序规则。
摘要由CSDN通过智能技术生成

对于这道题目来说,1⩽a,b⩽4×10^18,因此我们用 long long/signed long long 数据类型。因为在算法竞赛中 long long 常用些,所以这里的代码也用的是 long long 这个数据类型。

接下来就是如何表示 a+b 了,这里就要讲到 C++ 中的数字运算符。首先就是最基本的加减乘除,它在 C++ 中分别表示为 +-*/,但请注意,/ 在 C++ 中的定义并不完全等同于我们平常的四则运算中的除法,如果两边都是整型变量,在 C++ 中,/ 默认为整除。那么有没有办法可以让它变成我们平常的除法呢?答案是肯定的,让 / 两边中的一个或者两个数变成浮点型变量(floatfloat、doubledouble、long doublelong double 等),就可以让 / 的结果变为实际结果而不是整除后的结果了。例如,5/65/6 在 C++ 中的结果是 00,但如果你将其变成 5.0/65.0/6 或 5/6.05/6.0 或 5.0/6.05.0/6.0,那么 C++ 就会输出其正确的结果 0.8333…0.8333…(具体输出多少位取决于题目具体要求)。那么它的运算顺序是怎样的呢?如果仅限于加减乘除的话,它的运算顺序和平常的四则运算顺序是一样的:先乘除后加减,有括号先算括号里面的算式。只不过 C++ 里面提供运算的符号仅为小括号 () 罢了。

那么我们对于程序做了深入的剖析,想必大家都已经领会到 C++ 的语言魅力了。

#include <iostream>
using namespace std;

int main() {
	long long a, b;
	cin >> a >> b;
	cout << a + b;
	return 0;
}
  • 11
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值