📄 000.cpp
字号:
#include <stdio.h>
float max(float str[20])
{
float t;
int i;
t=str[0];
for(i=0;str[i+1]!='\0';i++) {
if(str[i]>t)
t=str[i];
}
return(t);
}
float min(float q,float w)
{
if(w>q) return(q);
else return(w);
}
void main()
{
int i,j,k;
int n,m,x,y;
float a[20][20],b[20][20],c[20],d[20][20];
printf("请分别输入A矩阵的行数n和列数m:");
scanf("%d %d",&n,&m);
printf("\n");
printf("一次输入矩阵A数值:");
printf("\n");
for(i=0;i<n;i++)
for(j=0;j<m;j++)
scanf("%f",&a[i][j]);
printf("请分别输入B矩阵的行数x和列数y:");
scanf("%d %d",&x,&y);
printf("\n");
printf("输入矩阵B数值:");
printf("\n");
for(i=0;i<x;i++)
for(j=0;j<y;j++)
scanf("%f",&b[i][j]);
if(m==x)
{
for(i=0;i<n;i++) {
for(j=0;j<y;j++) {
for(k=0;k<m;k++)
c[k]=min(a[i][k],b[k][j]);
d[i][j]=max(c);
}
}
printf("结果为:\n");
for(i=0;i<n;i++) {
for(j=0;j<y;j++)
printf("%5.1f",d[i][j]);
printf("\n");
}
}
else if(n==y)
{
for(i=0;i<m;i++) {
for(j=0;j<x;j++) {
for(k=0;k<n;k++) {
c[k]=min(a[i][k],b[k][j]);
} d[i][j]=max(c);
}
}
printf("结果为:\n");
for(i=0;i<m;i++) {
for(j=0;j<x;j++)
printf("%5.1f",d[i][j]);
printf("\n");
}
}
else printf("AB矩阵的行数与另一矩阵列数不相等,无法相乘!");
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -