#include<stdio.h>
#include<iostream.h>
void input(float *p,int m,int n)
{
float x;
float *p_end;
p_end=p+n*m-1;
for(;p<=p_end;p++)
{scanf("%d",&x);
*p=x;}
}
void main()
{
int i,j,max,bj;
float a0[8][2],a1[2][4],a2[4][3],a3[3][2],a4[2][5],a5[5][8];//定义6个数组存放矩阵;
int b[6][2]={8,2,2,4,4,3,3,2,2,5,5,8};//用于存放6个矩阵的的维数;
float *p[6]={&a0[8][2],&a1[2][4],&a2[4][3],&a3[3][2],&a4[2][5],&a5[5][8]};
printf("请输入第一个矩阵: \n");
input(*a0,8,2);
printf("请输入第2个矩阵: \n");
input(*a1,2,6);
printf("请输入第3个矩阵: \n");
input(*a2,6,4);
printf("请输入第4个矩阵: \n");
input(*a3,4,7);
printf("请输入第5个矩阵: \n");
input(*a4,7,3);
printf("请输入第6个矩阵: \n");
input(*a5,3,8);
for(j=0;j<5;j++)
{ max=b[0][1];
bj=0;
for(i=0;i<5;i++)
if(b[i][1]>max)
{max=b[i][1];bj=i;}
b[bj][1]=0;
printf("第%d个*第%d个 ",bj,bj+1);
}
}
运行时出现这样的问题 "0x004012c2"指令引用的"oxcdcdcd"内存.该内存不能为"written".