题目描述
你的任务是计算a+b。这是为了acm初学者专门设计的题目。你肯定发现还有其他题目跟这道题的标题类似,这些问题也都是专门为初学者提供的。
输入
输入包含一系列的a和b对,通过空格隔开。一对a和b占一行。
输出
对于输入的每对a和b,你需要依次输出a、b的和。
如对于输入中的第二对a和b,在输出中它们的和应该也在第二行。
样例输入 Copy
1 5
10 20
样例输出 Copy
6
30
代码:
#include <iostream>
using namespace std;
#include <string.h>
int main()
{
int a, b;
while (~scanf_s("%d %d", &a, &b))//就是当没有输入的时候退出循环
{
int sum = a + b;
cout << sum << endl;
}
return 0;
}
用到的新东西是~scanf ,也就是scanf的结果按位取反,因为scanf的返回值是输入值的个数,如果没有输入值就是返回-1,-1根据二进制按位取反结果是0,还有一种解决办法是
int main() {
int a, b;
while (scanf("%d %d", &a, &b) != EOF) {
printf("%d\n", a + b);
}
return 0;
}
但里面的!= EOF,我不是特别理解,查了下也没弄清楚,以后慢慢学吧