#include "stdafx.h"
#include <iostream>
#include <time.h>
using namespace std;
#define M 10
#define N 10
int main()
{
int m, n,x;
float num[M][N],min;
cout << "请输入m、n的值:" << endl;
cin >> m >> n;
void output(float a[][10], int b, int c);
float findmin(float a[][10], int b, int c);
srand(time(NULL));
for(int i=0;i<m;i++)
for (int j = 0; j < n; j++)
{
x = rand() % 100 + 1;
num[i][j] =(float) x / 100+rand()%100; //100以内小数
}
output(num, m, n);
min = findmin(num, m, n);
system("pause");
return 0;
}
void output(float a[][10], int b, int c)
{
for (int i = 0; i < b; i++)
{
for (int j = 0; j < c; j++)
printf("%4.2f ",a[i][j]);
cout << endl;
}
}
float findmin(float a[][10], int b, int c)
{
float min = 100;
int p, q;
for (int i = 0; i < b; i++)
{
for (int j = 0; j < c; j++)
{
if (a[i][j] < min)
{
min = a[i][j];
p = i;
q = j;
}
}
}
cout << "最小数在第" << p << "行第" << q << "列,该数是:" << min<<endl;
return min;
}
追问要c语言的代码……您这个好像是C++还是JAVA
#include<stdio.h>
#include <stdlib.h>
int main(){
int n, m;
float **a;
scanf("%d%d",&n,&m);
a = (float **)malloc(sizeof(float *) * n);//分配维数
for(int i = 0; i < n; i++)
a[i] = (float *)malloc(sizeof(float) * m);//分配各个元素
float l;int in,jm,i,j;
for (i = 0; i < n; i++){
for (j = 0; j < m; j++)
{
a[i][j] = (rand()%(int)((m+n)*1000))/(double)1000+i;
if(j==0) l=a[i][j],in=i,jm=j;
else if(l>a[i][j]) l=a[i][j],in=i,jm=j;
printf("%.3f ",a[i][j]);
}
printf("\n第%d行的最小元素是%.3lf,它的位置是第%d行第%d列\n",i,l,in,jm);
}
}