加法
题目描述
给出函数 add
的定义,使得其接受两个、三个或四个 int
并返回它们的和。
关于输入
共一行,为空格分隔的四个非负整数 a、b、c、d,其和在 int 范围内。
关于输出
共三行。
第一行为 a + b 的结果;
第二行为 a + b + c 的结果;
第三行为 a + b + c + d 的结果。
参考答案
#include <iostream>
int add(int a, int b, int c = 0, int d = 0) {
return a + b + c + d;
}
int main() {
int a, b, c, d;
std::cin >> a >> b >> c >> d;
std::cout << add(a, b) << std::endl;
std::cout << add(a, b, c) << std::endl;
std::cout << add(a, b, c, d) << std::endl;
}
#include <iostream>
int add(int x, int y) {
return x + y;
}
int add(int x, int y, int z) {
return x + y + z;
}
int add(int x, int y, int z, int w) {
return x + y + z + w;
}
int main() {
int a, b, c, d;
std::cin >> a >> b >> c >> d;
std::cout << add(a, b) << std::endl;
std::cout << add(a, b, c) << std::endl;
std::cout << add(a, b, c, d) << std::endl;
}
#include <iostream>
template <typename... Ts>
auto add(Ts... args) {
return (args + ...);
}
int main() {
int a, b, c, d;
std::cin >> a >> b >> c >> d;
std::cout << add(a, b) << std::endl;
std::cout << add(a, b, c) << std::endl;
std::cout << add(a, b, c, d) << std::endl;
}