求一个c语言程序定义一个长度为20的整型数组

,并初始示数组中的所有元素,每行5个元素,并求最大值及其下标,最小值及其下标,平均值

第1个回答  2012-12-06
int arr[20]={7,1,4,2,6,20,15,3,8,5,9,19,11,12,16,17,14,18,13,10};
int max=0,min=99999,sum=0,maxIndex,minIndex;
for(int x=0;x<20;x++){
if(arr[x]>max){
max=arr[x];
maxIndex=x;
}
if(arr[x]<min){
min=arr[x];
minIndex=x;
}
sum+=arr[x];
}
for(x=0;x<20;x++){
if(x%5==0)
printf("\n");
printf("%3d",arr[x]);
}
printf("\n最大值为:%d,下标为:%d\n",max,maxIndex);
printf("最小值为:%d,下标为:%d\n",min,minIndex);
printf("平均值为:%3.3f",sum/20.0);本回答被提问者和网友采纳
第2个回答  2012-12-06
#include<stdio.h>
int main()
{
int a[4][5],i,j;
int max(int a[4][5]);
int min(int a[4][5]);
int aver(int a[4][5]);
for(i=0;i<4;i++)
for(j=0;j<5;j++)
scanf("%d",&a[i][j]);
for(i=0;i<4;i++)
{
for(j=0;j<5;j++)
printf("%d ",a[i][j]);
printf("\n");
}
printf("max=%d\nmin=%d\naver=%d\n",max(a),min(a),aver(a));
return 0;
}
int max(int a[4][5])
{
int i,j,m=a[0][0];
for(i=0;i<4;i++)
for(j=0;j<5;j++)
if(a[i][j]>m)
m=a[i][j];
return(m);
}
int min(int a[4][5])
{
int i,j,m=a[0][0];
for(i=0;i<4;i++)
for(j=0;j<5;j++)
if(a[i][j]<m)
m=a[i][j];
return(m);
}
int aver(int a[4][5])
{
int i,j,m=0;
for(i=0;i<4;i++)
for(j=0;j<5;j++)
m+=a[i][j];
return(m/20);
}
相似回答