#include <stdio.h>
int main(int argc,const char *argv[])
{
int n,m;//行列
printf("请输入行数和列数:");
scanf("%d %d",&n,&m);
int A[n][m];//定义一个行列式
//输入行列式的数
for(int i=0;i<n;i++)
{
printf("请输入第%d行的数",i);
for(int j=0;j<m;j++)
{
scanf("%d",&A[i][j]);
}
}
int hang[n],line[m];
//计算每行的乘积
for(int i=0;i<n;i++)
{
hang[i] = 1;
for(int j=0;j<m;j++)
{
hang[i]*=A[i][j];
}
}
//计算每列的乘积
for(int j=0;j<m;j++)
{
line[j] = 1;
for(int i=0;i<n;i++)
{
line[j]*=A[i][j];
}
}
//计算最大值
int max=0;int l=0;
for(int i=0;i<n;i++)
{
for(int j=0;j<m;j++)
{
l = hang[i]*line[j]/A[i][j]/A[i][j];
if(l>max)
max = l;
}
}
// 输出最大值
printf("最大值为:%d\n", max); return 0;
}
效果
- 有一个unsigned char类型的数据data,把他的第六个bit位置为1。请写出将 data第6位清0的表达式