矩阵常用运算,c语言程序设计

问题描述:

矩阵常用运算,c语言程序设计
有一个3*3矩阵,要求实现以下功能:
1、输入一个3*3矩阵
2、输出该矩阵
3、求出其对角线元素之和
4、求出其最大元素及所在行号、列号
5、求出其最小元素行号、列号
6、求出其转置矩阵
7、退出
1个回答 分类:综合 2014-10-20

问题解答:

我来补答
#include
#define N 3
void main()
{
int i,j, sum = 0; int a[N][N], b[N][N];
int max , min,row_max = 0, col_max = 0, row_min = 0,col_min = 0;
printf("请输入矩阵的元素:");
for( i = 0; i < N; i++ )
for( j = 0; j < N; j++ ) scanf("%d",&a[i][j]);
printf("原始矩阵为:\n");
for( i = 0; i < N; i++ )
{
for( j = 0; j < N; j++ )
printf("%5d",a[i][j]);
printf("\n");
}
for( i =0; i < N; i++ )
sum += a[i][i];
printf(" 主对角线元素之和为: %d\n",sum);
max = a[0][0], min = a[0][0];
for( i = 0; i < N; i++ )
for( j = 0; j < N; j++ )
{
if( a[i][j] < min ) {min = a[i][j]; row_min = i; col_min = j; }
if( a[i][j] > max ){ max= a[i][j]; row_max = i; col_max = j;}
}
printf(" 最大元素为:%d,其所在行数为:%d,所在列数为:%d\n",max,row_max+1,col_max+1);
printf(" 最小元素为:%d,其所在行数为:%d,所在列数为:%d\n",min,row_min+1,col_min+1);
for( i = 0; i < N; i++ )
for( j = 0; j < N; j++ )
b[i][j] = a[j][i];
printf("矩阵a的转置矩阵为:\n");
for( i = 0; i < N; i++ )
{
for( j = 0; j < N; j++ )
printf("%5d",b[i][j]);
printf("\n");
}
}
再问: #define N 3���ǻ�ûѧ�����ܲ��ܲ��������лл
再答: ���Բ�����ʵ���������һЩ����͵����㶨����һ��������ֵΪ3. ���¹�����ʱ������������е�N���ij�3�����ˣ������������鷳�ģ�������#define N 3���һЩ����������������10�׷��������ʱ��ֻҪ��N���3�ij�10�Ϳ����ˣ�����һ��һ���ĵط���ȥ�����޸ģ���
 
 
展开全文阅读
剩余:2000
上一页:为什么只选B
下一页:第8题练习