(算法练习)——黑盒测试

黑盒测试统一在一篇博客里,不再区分。

要求:A+B 输入输出练习I
http://codeup.cn/problem.php?cid=100000574&pid=0
说明
感觉c[1000]用来暂存a+b的和就是耍流氓。。。但暂时还不会弄可变数组。。
代码

#include <stdio.h>
#include <string.h>
int main(){
	int a,b;
	int c[1000];
	int i = 0;
	while(scanf("%d%d",&a,&b) !=EOF){
		c[i++] = a + b;
	}
	for(int j = 0;j <i;j++){
		printf("%d\n",c[j]);
	}
	
}

要求:A+B 输入输出练习II
http://codeup.cn/problem.php?cid=100000574&pid=1
说明:
继续c[1000]。。。
代码:

#include <stdio.h>
int main(){
	int N,a,b;
	int c[1000];
	scanf("%d",&N);
	for(int i = 0;i <N;i++){
		scanf("%d %d",&a,&b);
		c[i] = a + b;
	}
	for(int i= 0;i <N;i++){
		printf("%d\n",c[i]);
	}
}

要求:A+B 输入输出练习III
http://codeup.cn/problem.php?cid=100000574&pid=2
说明:
同上
代码:

#include <stdio.h>
int main(){
	int a,b;
	int c[1000];
	int i = 0;
	while(scanf("%d %d",&a,&b) != EOF , a||b){
		c[i++] = a+b;
	}
	for(int j = 0;j <i;j++){
		printf("%d\n",c[j]);
	}
}

要求:A+B 输入输出练习IV
http://codeup.cn/problem.php?cid=100000574&pid=3
说明:
用了一个二维数组来存数,其实可以尝试下不存数,只在每次输出时存和呢?
代码:

#include <stdio.h>
int main(){
	int n,a,b;
	int c[100][1000];
	int d[1000];
	int sum = 0;
	int t = 0;
	while(scanf("%d",&n) != EOF,n!=0){
		for(int i = 0;i <n;i++){
			scanf("%d",&c[t][i]);
			sum = sum + c[t][i];
		}
		d[t] = sum;
		//printf("sum=%d t的值=%d\n",d[t],t);
		sum = 0;
		t++;
	}
	//printf("t的值=%d\n",t);
	for(int j = 0;j <t;j++){
		printf("%d\n",d[j]);
	}
}

要求:A+B 输入输出练习V
http://codeup.cn/problem.php?cid=100000574&pid=4
说明:
在上一个基础上改了改。。。
代码:

#include <stdio.h>
int main(){
	int start,n,a,b;
	int c[100][1000];
	int d[1000];
	int sum = 0;
	//start记录输入多少行 
	scanf("%d",&start);
	//用start循环 
	for(int e = 0;e <start;e++){
		//n记录每行多少个数字 
		scanf("%d",&n);
		for(int i = 0;i <n;i++){
			scanf("%d",&c[e][i]);
			sum = sum + c[e][i];
		}
		d[e] = sum;
		//sum每次循环结束要重置为0 
		sum = 0;	
	}
	
	for(int j = 0;j <start;j++){
		printf("%d\n",d[j]);
	}
}

要求:A+B 输入输出练习VI
http://codeup.cn/problem.php?cid=100000574&pid=5
说明:
就是上面一道题删掉输入为0这个条件即可
代码:

#include <stdio.h>
int main(){
	int n,a,b;
	int c[100][1000];
	int d[1000];
	int sum = 0;
	int t = 0;
	while(scanf("%d",&n) != EOF){
		for(int i = 0;i <n;i++){
			scanf("%d",&c[t][i]);
			sum = sum + c[t][i];
		}
		d[t] = sum;
		//printf("sum=%d t的值=%d\n",d[t],t);
		sum = 0;
		t++;
	}
	//printf("t的值=%d\n",t);
	for(int j = 0;j <t;j++){
		printf("%d\n",d[j]);
	}
}

要求:A+B 输入输出练习VII
http://codeup.cn/problem.php?cid=100000574&pid=6
说明:
同样的是上面一题改改,加个输出空行即可
代码:

#include <stdio.h>
#include <string.h>
int main(){
	int a,b;
	int c[1000];
	int i = 0;
	while(scanf("%d%d",&a,&b) !=EOF){
		c[i++] = a + b;
	}
	for(int j = 0;j <i;j++){
		printf("%d\n",c[j]);
		printf("\n");
	}
	
}

要求:A+B 输入输出练习VIII
http://codeup.cn/problem.php?cid=100000574&pid=7
说明:
输出加了个空行,改改。。。
代码:

#include <stdio.h>
int main(){
	int start,n,a,b;
	int c[100][1000];
	int d[1000];
	int sum = 0;
	//start记录输入多少行 
	scanf("%d",&start);
	//用start循环 
	for(int e = 0;e <start;e++){
		//n记录每行多少个数字 
		scanf("%d",&n);
		for(int i = 0;i <n;i++){
			scanf("%d",&c[e][i]);
			sum = sum + c[e][i];
		}
		d[e] = sum;
		//sum每次循环结束要重置为0 
		sum = 0;	
	}
	
	for(int j = 0;j <start;j++){
		printf("%d\n",d[j]);
		printf("\n");
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值