《算法笔记》2.10小节——C/C++快速入门->黑盒测试

目录

问题 A: A+B 输入输出练习I

问题 B: A+B 输入输出练习II

问题 C: A+B 输入输出练习III

问题 D: A+B 输入输出练习IV

问题 E: A+B 输入输出练习V

问题 F: A+B 输入输出练习VI

问题 G: A+B 输入输出练习VII

问题 H: A+B 输入输出练习VIII


问题 A: A+B 输入输出练习I

题目描述

你的任务是计算a+b。这是为了acm初学者专门设计的题目。你肯定发现还有其他题目跟这道题的标题类似,这些问题也都是专门为初学者提供的。

输入

输入包含一系列的a和b对,通过空格隔开。一对a和b占一行。

输出

对于输入的每对a和b,你需要依次输出a、b的和。

如对于输入中的第二对a和b,在输出中它们的和应该也在第二行。

样例输入

1 5
10 20

样例输出

6
30

题解

#include <stdio.h>
#include <string.h>
#include <math.h>
int main(){
	int a, b;
	while(scanf("%d%d", &a, &b) != EOF){
		printf("%d\n", a + b);
	}
	return 0;
} 

问题 B: A+B 输入输出练习II

题目描述

你的任务是计算a+b。

输入

第一行是一个整数N,表示后面会有N行a和b,通过空格隔开。

输出

对于输入的每对a和b,你需要在相应的行输出a、b的和。

如第二对a和b,对应的和也输出在第二行。

样例输入

2
1 5
10 20

样例输出

6
30

题解

#include <stdio.h>
#include <string.h>
#include <math.h>
int main(){
	int a, b;
	int N;
	scanf("%d", &N);
	while(N--){
		scanf("%d%d", &a, &b);
		printf("%d\n", a + b);
	}
	return 0;
} 

问题 C: A+B 输入输出练习III

题目描述

你的任务是计算a+b。

输入

输入中每行是一对a和b。其中会有一对是0和0标志着输入结束,且这一对不要计算。

输出

对于输入的每对a和b,你需要在相应的行输出a、b的和。

如第二对a和b,他们的和也输出在第二行。

样例输入

1 5
10 20
0 0

样例输出

6
30

题解

#include <stdio.h>
#include <string.h>
#include <math.h>
int main(){
	int a, b;
	while(scanf("%d%d", &a, &b) != EOF){
		if(a == 0 && b == 0){
			break;
		}
		printf("%d\n", a + b);
	}
	return 0;
} 

问题 D: A+B 输入输出练习IV

题目描述

你的任务是计算若干整数的和。

输入

每行的第一个数N,表示本行后面有N个数。

如果N=0时,表示输入结束,且这一行不要计算。

输出

对于每一行数据需要在相应的行输出和。

样例输入

4 1 2 3 4
5 1 2 3 4 5
0 

样例输出

10
15

题解

#include <stdio.h>
#include <string.h>
#include <math.h>
int main(){
	int a;
	int N;
	while(1){
		scanf("%d", &N);
		if(N == 0){
			break;
		}
		int sum = 0;
		while(N--){
			scanf("%d", &a);
			sum += a;
		}
		printf("%d\n", sum);
	}
	return 0;
} 

问题 E: A+B 输入输出练习V

题目描述

你的任务是计算若干整数的和。

输入

输入的第一行是一个正数N,表示后面有N行。每一行的第一个数是M,表示本行后面还有M个数。

输出

对于每一行数据需要在相应的行输出和。

样例输入

2
4 1 2 3 4
5 1 2 3 4 5

样例输出

10
15

题解

#include <stdio.h>
#include <string.h>
#include <math.h>
int main(){
	int a;
	int N, M;
	scanf("%d", &N);
	while(N--){
		scanf("%d", &M);
		int sum = 0;
		while(M--){
			scanf("%d", &a);
			sum += a;
		}
		printf("%d\n", sum);
	}
	return 0;
} 

问题 F: A+B 输入输出练习VI

题目描述

你的任务是计算若干整数的和。

输入

每行的第一个数N,表示本行后面有N个数。

输出

对于每一行数据需要在相应的行输出和。

样例输入

4 1 2 3 4
5 1 2 3 4 5

样例输出

10
15

题解

#include <stdio.h>
#include <string.h>
#include <math.h>
int main(){
	int a;
	int N;
	while(scanf("%d", &N) != EOF){
		int sum = 0;
		while(N--){
			scanf("%d", &a);
			sum += a;
		}
		printf("%d\n", sum);
	}
	return 0;
} 

问题 G: A+B 输入输出练习VII

题目描述

你的任务是计算两个整数的和。

输入

输入包含若干行,每行输入两个整数a和b,由空格分隔。

输出

对于每组输入,输出a和b的和,每行输出后接一个空行。

样例输入

1 5
10 20

样例输出

6

30

题解

#include <stdio.h>
#include <string.h>
#include <math.h>
int main(){
	int a, b;
	while(scanf("%d%d", &a, &b) != EOF){
		printf("%d\n\n", a + b);
	}
	return 0;
} 

问题 H: A+B 输入输出练习VIII

题目描述

你的任务是计算若干整数的和。

输入

输入的第一行为一个整数N,接下来N行每行先输入一个整数M,然后在同一行内输入M个整数。

输出

对于每组输入,输出M个数的和,每组输出之间输出一个空行。

样例输入

3
4 1 2 3 4
5 1 2 3 4 5
3 1 2 3

样例输出

10

15

6

题解

#include <stdio.h>
#include <string.h>
#include <math.h>
int main(){
	int a;
	int N, M;
	scanf("%d", &N);
	while(N--){
		scanf("%d", &M);
		int sum = 0;
		while(M--){
			scanf("%d", &a);
			sum += a;
		}
		printf("%d\n\n", sum);
	}
	return 0;
}
发布了84 篇原创文章 · 获赞 97 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/wyatt007/article/details/103744476