要求:求解最小值通过函数调用实现。
printf函数输出最小值,每个数据占5位。
麻烦大家解答一下。
#include <stdio.h>
int mins(int *a,int n)
{
int i,min;
for(i=0;i<n;i++)
{
if(i==0)
min = a[i];
else if(min > a[i])
min = a[i];
}
return min;
}
int main()
{
int a[5][4];
int i,j;
for(i=0;i<5;i++)
for(j=0;j<4;j++)
scanf("%d",&a[i][j]);
for(i=0;i<5;i++)
printf("%-5d",mins(a[i],4));
return 0;
}
#include<stdio.h>
#include<stdlib.h>
#define n 5
#define m 4
void s(int t[n][m])
{
int j,k;
for(j=0; j<n; j++)
{
for(k=0; k<m; k++)
{
//scanf("%d",&t[j][k]);//输入
t[j][k]=rand()%100;//随机
}
}
}
void p(int t[n][m])
{
int j,k;
printf("输出\n");
for(j=0; j<n; j++)
{
for(k=0; k<m; k++)
{
printf("%3d",t[j][k]);
}
printf("\n");
}
}
void findmin(int t[n][m])
{
int j,k;
for(j=0; j<n; j++)
{
int min=t[j][0];
for(k=0; k<m; k++)
{
if(min>t[j][k])
{
min=t[j][k];
}
}
printf("第%d行最小值为:%d\n",j+1,min);
}
}
int main()
{
int t[n][m];
s(t);
p(t);
findmin(t);
return 0;
}