题目描述-1
分别计算多组a+b的值。
输入
输入包含多组测试数据。每行包含一组整数a,b。当输入为0 0 时,测试结束,此时的结果不输出。
输出
对于每一对整数a,b,输出它们的和,并且每行输出一个结果。
样例输入
1 5
10 20
0 0
样例输出
6
30
#include <iostream>
using namespace std;
int main()
{
int n = 0;//定义一个统计a和b都不为0的组数,并初始化
int a[100], b[100];//分别给a和b定义静态一维数组
for (int i = 0;; i++)//由于存储的组数n未知,故不写i<n,直接i++累加
{
cin >> a[i] >> b[i];//循环输入a和b,存入一维数组中
n++;//每存入一次a和b,组数+1
if (a[i] == 0 && b[i] == 0)//如果a和b输入0 0时 退出循环
{
break;
}
}
for (int i = 0; i < n - 1; i++)//由于当输入0 0时,此时的结果不输出,故第n个不输出
{
cout << a[i] + b[i] << endl;//for循环输出a+b的和
}
}
调试结果如下:
题目描述-2
分别计算多组a+b的值。
输入
第一行包含一个整数N,表示有N组数据。接下来的N行,每行输入一组a,b数据。
输出
对于每一对整数a,b,输出它们的和,并且每行输出一个结果。
样例输入
2
1 5
10 20
样例输出
6
30
#include <iostream>
using namespace std;
int main()
{
int N, n = 0;
int a[100], b[100];
cin >> N;
for (int i = 0;; i++)
{
cin >> a[i] >> b[i];
n++;
if (n == N)//由于N是确定的,N为多少,则a和b的组数也为多少
{
break;//当组数等于定义的N行数,退出循环
}
}
for (int i = 0; i < n; i++)
{
cout << a[i] + b[i] << endl;
}
}
调试结果如下:
由于是两个普通的算法题,在这里希望可以帮助到那些打基础的朋友们。
所以没有使用动态数组,而是定义了一个固定空间的静态数组,使得输入数据上有很大的局限性,以及不灵活等现象。