基本的数学运算符 + - / * %
整数相除会截取整数部分
浮点数不能使用取模运算符
整数相除会截取整数部分
浮点数不能使用取模运算符
C和C++可以用简化的符号同时执行操作和赋值
//: C03:Mathops.cpp
// From Thinking in C++, 2nd Edition
// Available at http://www.BruceEckel.com
// (c) Bruce Eckel 2000
// Copyright notice in Copyright.txt
// Mathematical operators
#include <iostream>
using namespace std;
// A macro to display a string and a value.
#define PRINT(STR, VAR) \
cout << STR " = " << VAR << endl
int main() {
int i, j, k;
float u, v, w; // Applies to doubles, too
cout << "enter an integer: ";
cin >> j;
cout << "enter another integer: ";
cin >> k;
PRINT("j",j); PRINT("k",k);
i = j + k; PRINT("j + k",i);
i = j - k; PRINT("j - k",i);
i = k / j; PRINT("k / j",i);
i = k * j; PRINT("k * j",i);
i = k % j; PRINT("k % j",i);
// The following only works with integers:
j %= k; PRINT("j %= k", j);
cout << "Enter a floating-point number: ";
cin >> v;
cout << "Enter another floating-point number:";
cin >> w;
PRINT("v",v); PRINT("w",w);
u = v + w; PRINT("v + w", u);
u = v - w; PRINT("v - w", u);
u = v * w; PRINT("v * w", u);
u = v / w; PRINT("v / w", u);
// The following works for ints, chars,
// and doubles too:
PRINT("u", u); PRINT("v", v);
u += v; PRINT("u += v", u);
u -= v; PRINT("u -= v", u);
u *= v; PRINT("u *= v", u);
u /= v; PRINT("u /= v", u);
fflush(stdin);
getchar();
} ///:~
输出
enter an integer: 3
enter another integer: 5
j = 3
k = 5
j + k = 8
j - k = -2
k / j = 1
k * j = 15
k % j = 2
j %= k = 3
Enter a floating-point number: 3.0
Enter another floating-point number:5.0
v = 3
w = 5
v + w = 8
v - w = -2
v * w = 15
v / w = 0.6
u = 0.6
v = 3
u += v = 3.6
u -= v = 0.6
u *= v = 1.8
u /= v = 0.6