函数题:将二维数组指定行对调后求不靠边元素的和
本题需按要求输入矩阵元素,将指定的行列值对调后输出矩阵并求不靠边元素之和。矩阵行的值m从键盘读入(2<=m<=10)。
### 函数接口定义:
c++
int Input (float (*arr)[N] );
void Output( float (*arr)[N], int m );
float Sum ( float (*arr)[N], int m );
void Fun(float (*arr)[N],int m,int x,int y);
其中Input()函数从键盘读入矩阵的行数,然后输入矩阵元素,并返回矩阵的行数;Output()函数按行输出矩阵,保留小数点后1位,每个元素占5列、右对齐;Sum()函数实现求矩阵的所有不靠边元素之和,并将结果返回;Fun()函数实现指定两行元素的对调。arr m、x、 y都是用户传入的参数。 m 表示二维数组实际行数,x和 y表示需要对调元素的两行。
### 裁判测试程序样例:
c++
#include<stdio.h>
#define M 10
#define N 4
int Input (float (*arr)[N] );
void Output( float (*arr)[N], int m );
float Sum ( float (*arr)[N], int m );
void Fun(float (*arr)[N],int m,int x,int y);
int main(void)
{
float data[M][N],sum;
int m,x,y;
m = Input(data);
scanf("%d%d", &x,&y);
Fun(data,m,x,y);
Output( data, m );
sum = Sum(data,m);
printf("sum = %.2f\n", sum);
return 0;
}
/* 请在这里填写答案 */
### 输入样例:
in
4
18 29.5 45 33
66 3.4 11.5 57
70 100 2 16.9
15 25.8 4.5 36
2 3
### 输出样例:
在这里给出相应的输出。例如:
out
18.0 29.5 45.0 33.0
70.0100.0 2.0 16.9
66.0 3.4 11.5 57.0
15.0 25.8 4.5 36.0
sum = 116.90
答案:若无答案欢迎评论
### 函数接口定义:
c++
int Input (float (*arr)[N] );
void Output( float (*arr)[N], int m );
float Sum ( float (*arr)[N], int m );
void Fun(float (*arr)[N],int m,int x,int y);
其中Input()函数从键盘读入矩阵的行数,然后输入矩阵元素,并返回矩阵的行数;Output()函数按行输出矩阵,保留小数点后1位,每个元素占5列、右对齐;Sum()函数实现求矩阵的所有不靠边元素之和,并将结果返回;Fun()函数实现指定两行元素的对调。arr m、x、 y都是用户传入的参数。 m 表示二维数组实际行数,x和 y表示需要对调元素的两行。
### 裁判测试程序样例:
c++
#include<stdio.h>
#define M 10
#define N 4
int Input (float (*arr)[N] );
void Output( float (*arr)[N], int m );
float Sum ( float (*arr)[N], int m );
void Fun(float (*arr)[N],int m,int x,int y);
int main(void)
{
float data[M][N],sum;
int m,x,y;
m = Input(data);
scanf("%d%d", &x,&y);
Fun(data,m,x,y);
Output( data, m );
sum = Sum(data,m);
printf("sum = %.2f\n", sum);
return 0;
}
/* 请在这里填写答案 */
### 输入样例:
in
4
18 29.5 45 33
66 3.4 11.5 57
70 100 2 16.9
15 25.8 4.5 36
2 3
### 输出样例:
在这里给出相应的输出。例如:
out
18.0 29.5 45.0 33.0
70.0100.0 2.0 16.9
66.0 3.4 11.5 57.0
15.0 25.8 4.5 36.0
sum = 116.90
答案:若无答案欢迎评论