編寫程序 c語言。用一維數組存儲二維數組的數據看編寫函數完成
代碼一:
#include
int MAX,MIN;
int maxi,maxj,mini,minj;
void main()
{
void result(int x[][5],int m,int n);
int a[5][5],max,min,i,j;
for(i=0;i
for(j=0;j
scanf("%d",&a[i][j]);
MAX=MIN=a[0][0];
maxi=maxj=mini=minj=0;
result(a,5,5);
printf("MAX=%d,maxi=%d,maxj=%d",MAX,maxi,maxj);
printf("MIN=%d,mini=%d,minj=%d",MIN,mini,minj);
}
void result(int x[][5],int m,int n)
{
int i,j;
for(i=0;i for(j=0;j { if(x[i][j]>MAX) { MAX=x[i][j]; maxi=i; maxj=j; } if(x[i][j] { MIN=x[i][j]; mini=i; minj=j; } } } 但代碼一有個缺點,那就是如果有多個最值,只能輸出最後一個。下面的代碼是經過改進的。 代碼二: #include int MAX,MIN; int maxi,maxj,mini,minj; void main() { void result(int x[][5],int m,int n); int a[5][5],max,min,i,j; for(i=0;i for(j=0;j scanf("%d",&a[i][j]); MAX=MIN=a[0][0]; maxi=maxj=mini=minj=0; result(a,5,5); } void result(int x[][5],int m,int n) { int i,j; for(i=0;i for(j=0;j { if(x[i][j]>MAX) MAX=x[i][j]; if(x[i][j] MIN=x[i][j]; } for(i=0;i for(j=0;j { if(x[i][j]==MAX) { MAX=x[i][j]; maxi=i; maxj=j; printf("MAX=%d,maxi=%d,maxj=%d",MAX,maxi,maxj); } if(x[i][j]==MIN) { MIN=x[i][j]; mini=i; minj=j; printf("MIN=%d,mini=%d,minj=%d",MIN,mini,minj); } } } #include #include #include int main() { int i,k,a[5][5],b[25],j=0; double c=0; srand(time(NULL)); printf("產生的隨機數組是:"); for(i=0;i{ for(k=0;k{ a[i][k]=rand()%90+10; printf(" %d ",a[i][k]); c+=a[i][k]; } printf(""); } c=c/25; //printf("%lf",c); printf("新的數組爲:"); for (i = 0; i { for(k=0;kif (a[i][k] { b[j] = a[i][k]; j++; } } for(i=0;iprintf("%d ",b[i]); return 0; }for (i = 0; ic語言二維數組一維數組
以上就是用 C 語言編寫程序,使用一維數組存儲二維數組的數據並編寫函數完成的詳細內容,更多請關注本站其它相關文章!