正文
c语言矩阵的求和主函数 c语言求矩阵的乘积
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
矩阵求和C语言函数调用的形式
#include stdio.h#include string.h#include stdlib.h typedef struct matrix{ int **array; int row; int column;} MATRIX, *PMATRIX;void addMatrix( PMATRIX a, PMATRIX b, PMATRIX c ){ int i,j, k; if ( a-row != b-row || a-column != b-column ) { printf( "矩阵A %d*%d 与矩阵B %d*%d 大小不同,不支持加法运算\n", a-row, a-column, b-row, b-column ); c-row = 0; c-column = 0; return; } c-row = a-row; c-column = a-column; c-array = (int**)malloc(c-row*sizeof(int*)); if ( c-array == NULL ) { printf( "分配内存失败\n" ); c-row = 0; c-column = 0; return; } for( i=0; ia-row; i++ ) { *(c-array+i) = (int*)malloc( c-column*sizeof(int) ); if ( *(c-array+i) == NULL ) { printf( "分配内存失败\n" ); c-row = i-1; freeMatrix( c ); return; } memset( *(c-array+i), 0, c-column*sizeof(int) ); for( j=0; ja-column; j++ ) *(*(c-array+i)+j) = *(*(a-array+i)+j) + *(*(b-array+i)+j); }}
C语言矩阵求和
#includestdio.h
#includestdlib.h
void main()
{
int i,j,m,n,sum = 0;
int *p;
printf("M = ");
scanf("%d",m);
printf("N = ");
scanf("%d",n);
p = (int *)malloc(m * n * sizeof(int));
for(i = 1; i = m; i++)
{
for(j = 1; j= n; j++)
{
printf("a[%d][%d] = ",i,j);
scanf("%d",(p + (i-1)*n + j-1));
}
}
for(i = 1; i = m; i++)
{
for(j = 1; j= n; j++)
{
sum += *(p + (i-1)*n + j-1);
}
printf("%d: %d\n",i,sum);
sum = 0;
}
}
求矩阵对角线数字之和,编写函数,从主函数中调用,c语言
#include stdio.h
#include io.h
#define ROW 3 /*数组行数*/
#define COL ROW /*数组列数=行数*/
int sum(int data[ROW][COL])
{
/*求数组data中非对角线元素之和*/
int x,y,sum=0;
for(x=0;xROW;x++)/*遍历数组查找对角线元素*/
for(y=0;yCOL;y++)/*主对角线座标x==y,副对角线座标x+y=ROW-1*/
if(x==y || x+y==ROW-1)/*如果是对角线元素*/
sum+=data[x][y];/*累加*/
return sum;
}
int main()
{
int test[ROW][COL]={1, 2, 3,
4, 5, 6,
7, 8, 9 };
printf("矩阵对角线数字之和=%d\n", sum(test));/*测试并输出*/
return 0;
}
C语言中求两个矩阵的和
C语言中求两个矩阵的和具体如下:
#includestdio.h
#includestdlib.h
#includetime.h
void main()
{
int a[3][3];
int b[3][3];
int i,j,c,x;
printf(" 求两个矩阵之和\n");
printf("请选择输入方式\n");
printf("0为随机自主输入,1为人工输入\n");
scanf("%d",x);
if(x==1)
{
printf("请输入两个3*3矩阵,以回车结束每个数字的输入\n");
for(i=0;i=2;i++)
{
for(j=0;j=2;j++)
{
printf("a[%d][%d]=",i,j);
scanf("%d",a[i][j]);
}
}
for(i=0;i=2;i++)
{
for(j=0;j=2;j++)
{
printf("b[%d][%d]=",i,j);
scanf("%d",b[i][j]);
}
}
}
if(x==0)
{
srand((unsigned int)time(NULL));
for(i=0;i=2;i++)
{
for(j=0;j=2;j++)
{
a[i][j]=rand()%100+1;
}
}
for(i=0;i=2;i++)
{
for(j=0;j=2;j++)
{
printf("a[%d][%d]=",i,j);
printf("%d\n",a[i][j]);
}
}
srand((unsigned int)time(NULL));
for(i=0;i=2;i++)
{
for(j=0;j=2;j++)
{
b[i][j]=rand()%100+1;
}
}
for(i=0;i=2;i++)
{
for(j=0;j=2;j++)
{
printf("b[%d][%d]=",i,j);
printf("%d\n",b[i][j]);
}
}
}
for(i=0;i=2;i++)
{
for(j=0;j=2;j++)
{
c=a[i][j]+b[i][j];
printf(" %d \n",c);
}
}
}
关于c语言矩阵的求和主函数和c语言求矩阵的乘积的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。