求高手编写一个对我来说超难!!的C语言题目,要能运行得到真确结果的。

来源:百度知道 编辑:UC知道 时间:2024/05/17 22:29:02
题目:(矩阵操作)
编程实现矩阵的基本操作
从键盘输入一个n×n 的矩阵,实现以下操作:
a) 查找该矩阵中最大值的位置,
b) 求该矩阵的对角线之积
c) 实现该矩阵的行列互换
d) 从键盘上再输入一个n×n的矩阵,求这两个矩阵的和
e) 编写main()函数用于测试以上4项功能。
注:以上a)~d)要求每项操作用函数实现其功能。

#include<stdio.h>
#define N 3

void find(int m[N][N], int* x, int* y);
int product(int m[N][N]);
void swap(int m[N][N]);
void add(int m[N][N], int n[N][N], int t[N][N]);
void show(int m[N][N]);
void input(int m[N][N]);

void main()
{
int m[N][N];
int t[N][N];
int x,y;
input(m);
find(m, &x, &y);
printf("%d %d\n",x,y);
swap(m);
show(m);
input(t);
add(m,t,t);
show(t);

}

void find(int m[N][N], int* x, int* y)
{
int i,j;
int tmp = 0;
for (i = 0; i < N; i++)
{
for (j = 0; j < N; j++)
{
if (m[i][j]>tmp)
{
tmp = m[i][j];
*x = i;
*y = j;
}
}
}
}

int product(int m[N][N])
{
int i,tmp = 1;
for (i = 0; i < N; i++)
{
tmp *= m[i][i];
}
return tmp;
}