发布时间 : 星期一 文章OJ题实验(10)更新完毕开始阅读64bae8e976c66137ef06192a
实验(10)
1382 Problem A: 编写函数:三个数的最大最小值 (Append
Code)
Time Limit: 1 Sec Memory Limit: 2 MB
Submit: 3512 Solved: 2342 [Submit][Status][Web Board]
Description
给出三个数a,b,c,最大值是?最小值是?
----------------------------------------------------------------------------- 编写以下两个函数:
get_num()的功能是读取输入的三个整数a,b,c; max_min()的功能是求出a,b,c的最大值和最小值。
以上函数的调用格式见“Append Code”。这里不给出函数原型,请通过main()函数自行确定。
Input
输入的第一个整数n,表示有n组测试数据,每组3个整数:a,b,c。a,b,c都在int类型范围内。
Output
每组测试数据对应输出一行:为a,b,c的最大值和最小值,格式见sample。
Sample Input
5
20 15 10 10 15 20 100 100 0 0 1 -1 0 0 0
Sample Output
case 1 : 20, 10 case 2 : 20, 10 case 3 : 100, 0 case 4 : 1, -1 case 5 : 0, 0 1 int main() 2 {
3 int cases, i;
4 int mmax, mmin, a, b, c; 5
6 scanf(\
7 for(i = 1; i <= cases; i++) 8 {
9 get_num(&a, &b, &c); 10 max_min(&mmax, &mmin, a, b, c); 11 printf(\12 } 13 }
1467Problem B: 编写函数:求矩阵各列的平均值 (Append
Code)
Time Limit: 1 Sec Memory Limit: 16 MB
Submit: 2384 Solved: 1169 [Submit][Status][Web Board]
Description
编写一个程序,求矩阵中各列元素值相加的平均值。其中,矩阵的元素都是很小的整数,且各列元素之和的数值不会超出int类型的表示范围。
----------------------------------------------------------------------------- 编写三个函数完成程序:
原型:int get_matrix(int mtx[][], int m, int n);
功能:按照输入格式,读取一个m行n列的矩阵存放在二维数组mtx[][]中。 原型:int put_array(double arr[], int n);
功能:按照输出格式,输出有n个元素的一维数组arr[]。 原型:int count_average(double arr[], int mtx[][], int m, int n);
功能:计算m行n列的矩阵mtx[][]各列的平均值,存放到数组arr[]中。 函数的调用格式见“Append Code”。
Input
输入为多行。第一行K>0,表示有K个测试用例。
之后K个测试用例中,首先是两个整数0<=M,N<=100,表示该测试用例的矩阵是一个M行N列的矩阵。之后是一个M行N列的整数组成的矩阵。
Output
输出有K行,每个测试用例的结果占一行。每行的格式为: case i:d1 d2 ... dj
其中i表示测试用例的编号(从1开始),d1、d2、....、dj表示相应测试用例的各列元素相加的平均值,两两之间用空格隔开。 每个平均值用%lg输出即可。
Sample Input
4 3 3 1 2 3 1 2 3 1 2 3 2 3 1 1 1 1 1 1 1 1 1 5 1 3 4 5 6 7
Sample Output
case 1:1 2 3 case 2:1 1 1 case 3:1 case 4:5
HINT
“Append Code”中用到的头文件、全局变量或宏的定义应自行补充。
Append Code
append.c,
1 int main() 2 {
3 int i, cases;
4 double average[MAX_SIZE];
5 int m, n, matrix[MAX_SIZE][MAX_SIZE]; 6 scanf(\
7 for(i = 1; i <= cases; i++) 8 {
9 scanf(\10 get_matrix(matrix, m, n); 11 count_average(average, matrix, m, n); 12 printf(\13 put_array(average, n); 14 } 15 return 0; 16 }
#include
int get_matrix(int mtx[MAX_SIZE][MAX_SIZE], int m, int n) {
int i, j;
for(i = 0; i < m;i ++ )
for(j = 0; j < n; j ++) scanf(\}
int put_array(double arr[], int n) {
int i;
for(i = 0; i < n; i ++) {