第1个回答 2014-12-26
#include<stdio.h>
void main()
{
// int a=-1;
// printf("%12o\n",a);
float a[3][3]={14.3,2.6,3.9,3,3,6,3,4,2};
float x; int i,j;
float maxRow[3];//记录每行的最大值
//记录每行的最大值 到maxRow[i]
for(i=0;i<3;i++)
{
for (j=0;j<3;j++)
{
if( j==0)
{
maxRow[i]=a[i][j];
}else
{
if(maxRow[i]<a[i][j]){
maxRow[i]=a[i][j];
}
}
}
}
//输出3行3列,每个值除以该行的最大的
for(i=0;i<3;i++)
{
for (j=0;j<3;j++)
{
printf("%.2f ",a[i][j]/maxRow[i]);//保留2位小数
}
printf("\n");
}
}
运行结果:
1.00 0.18 0.27
0.50 0.50 1.00
0.75 1.00 0.50本回答被提问者和网友采纳
第2个回答 2014-12-26
#include<iomanip>
float max3(float a[]){
float x = a[0];
if (x < a[1]) x = a[1];
if (x < a[2]) x = a[2];
return x;
}
void main()
{
float a[3][3] = { 14.3, 2.6, 3.9, 3, 3, 6, 3, 4, 2 };
float x; int i, j;
for (i = 0; i < 3;i++)
{
int max = max3(a[i]);
for (j = 0; j < 3;j++)
{
a[i][j] = a[i][j] /max ;
}
}
for (i = 0; i < 3; i++){
for (j = 0; j < 3; j++)
cout << setw(6) << setprecision(1) << a[i][j];
cout << endl;
}
}