#include "stdio.h"
#include "stdlib.h"
//#include "time.h"
//関数のプロトタイプ宣言
void f_init( int, int, int [][5] );
void f_pout( int, int, int [][5] );
void f_max( int , int , int [][5] );
void f_max_2( int , int , int [][5] );
void f_min( int, int, int [][5] );
void f_min_2( int , int , int [][5] );
void f_ave( int , int , int [][5] );
void f_ave_2( int , int , int [][5] );
int main()
{
int row = 3, col = 5;
int data1[3][5];
// srand((unsigned)time(NULL));
f_init( row, col, data1 );
f_pout( row, col, data1 );
f_max( row, col, data1 );
f_min( row, col, data1 );
f_ave( row, col, data1 );
return 0;
}
void f_init( int row, int col, int dat[][5] )
{
int i, j;
for( i = 0; i < row; i++ ){
for( j = 0; j < col; j++ ){
dat
[i
][j
] = rand() % 100; }
}
}
void f_pout( int row, int col, int dat[][5] )
{
int i, j;
for( i = 0; i < row; i++ ){
for( j = 0; j < col; j++ ){
}
//if( i == 0 ){
f_max_2( i, col, dat );
f_min_2( i, col, dat );
f_ave_2( i, col, dat );
//}
}
}
void f_max( int row, int col, int dat[][5] )
{
int i, j, k;
int Amax[5], max[5];
for( i = 0; i < row; i++ ){
for( j = 0; j < col; j++ ){
if( dat[i][j] > max[j] ){
max[j] = dat[i][j];
Amax[j] = max[j];
}
}
}
for( k = 0; k < col; k++ ){
}
}
void f_min( int row, int col, int dat[][5] )
{
int i, j, k;
int Amin[5], min[5] = { 99, 99, 99, 99, 99 } ;
for( i = 0; i < row; i++ ){
for( j = 0; j < col; j++ ){
if( dat[i][j] < min[j] ){
min[j] = dat[i][j];
Amin[j] = min[j];
}
}
}
for( k = 0; k < col; k++ ){
}
}
void f_ave( int row, int col, int dat[][5] )
{
int i, j, sum;
for( j = 0; j < col; j++ ){
sum = 0;
for( i = 0; i < row; i++ ){
sum += dat[i][j];
}
printf( "%5.1f", (double)sum
/ row
); }
}
void f_max_2( int row, int col, int dat[][5] )
{
int i;
int Amax_2 = 0;
for( i = 0; i < col; i++ ){
if( dat[row][i] > Amax_2 ){
Amax_2 = dat[row][i];
}
}
}
void f_min_2( int row, int col, int dat[][5] )
{
int i;
int Amin_2 = 99;
for( i = 0; i < col; i++ ){
if( dat[row][i] < Amin_2 ){
Amin_2 = dat[row][i];
}
}
}
void f_ave_2( int row, int col, int dat[][5] )
{
int i;
int sum = 0;
for( i = 0; i < col; i++ ){
sum += dat[row][i];
}
printf( "%5.1f", (double)sum
/ col
); }
I2luY2x1ZGUgInN0ZGlvLmgiCiNpbmNsdWRlICJzdGRsaWIuaCIKLy8jaW5jbHVkZSAidGltZS5oIgoKLy/plqLmlbDjga7jg5fjg63jg4jjgr/jgqTjg5flrqPoqIAKdm9pZCAgICBmX2luaXQoIGludCwgaW50LCBpbnQgW11bNV0gKTsKdm9pZCAgICBmX3BvdXQoIGludCwgaW50LCBpbnQgW11bNV0gKTsKdm9pZCAgICBmX21heCggaW50ICwgaW50ICwgaW50IFtdWzVdICk7CnZvaWQgICAgZl9tYXhfMiggaW50ICwgaW50ICwgaW50IFtdWzVdICk7CnZvaWQgICAgZl9taW4oIGludCwgaW50LCBpbnQgW11bNV0gKTsKdm9pZCAgICBmX21pbl8yKCBpbnQgLCBpbnQgLCBpbnQgW11bNV0gKTsKdm9pZCAgICBmX2F2ZSggaW50ICwgaW50ICwgaW50IFtdWzVdICk7CnZvaWQgICAgZl9hdmVfMiggaW50ICwgaW50ICwgaW50IFtdWzVdICk7CgppbnQgbWFpbigpCnsKICAgIGludCAgICAgcm93ID0gMywgY29sID0gNTsKICAgIGludCAgICAgZGF0YTFbM11bNV07CgogICAgLy8gICAgc3JhbmQoKHVuc2lnbmVkKXRpbWUoTlVMTCkpOwogICAgcHJpbnRmKCJkYXRhICAgICAgICAgICAgICAgICAgICAgICAgICBtYXggIG1pbiAgYXZlXG4iKTsKICAgIGZfaW5pdCggcm93LCBjb2wsIGRhdGExICk7CiAgICBmX3BvdXQoIHJvdywgY29sLCBkYXRhMSApOwogICAgcHJpbnRmKCJcbiIpOwogICAgZl9tYXgoIHJvdywgY29sLCBkYXRhMSApOwogICAgZl9taW4oIHJvdywgY29sLCBkYXRhMSApOwogICAgZl9hdmUoIHJvdywgY29sLCBkYXRhMSApOwoKICAgIHJldHVybiAgMDsKfQoKCnZvaWQgICAgZl9pbml0KCBpbnQgcm93LCBpbnQgY29sLCBpbnQgZGF0W11bNV0gKQp7CiAgICBpbnQgICAgIGksIGo7CgogICAgZm9yKCBpID0gMDsgaSA8IHJvdzsgaSsrICl7CiAgICAgICAgZm9yKCBqID0gMDsgaiA8IGNvbDsgaisrICl7CiAgICAgICAgICAgIGRhdFtpXVtqXSA9IHJhbmQoKSAlIDEwMDsKICAgICAgICB9CiAgICB9Cn0KCgp2b2lkICAgIGZfcG91dCggaW50IHJvdywgaW50IGNvbCwgaW50IGRhdFtdWzVdICkKewogICAgaW50ICAgICBpLCBqOwoKICAgIGZvciggaSA9IDA7IGkgPCByb3c7IGkrKyApewogICAgICAgIHByaW50ZiggIiAgICIgKTsKICAgICAgICBmb3IoIGogPSAwOyBqIDwgY29sOyBqKysgKXsKICAgICAgICAgICAgcHJpbnRmKCAiJTVkIiwgZGF0W2ldW2pdICk7CiAgICAgICAgfQoKICAgICAgICAvL2lmKCBpID09IDAgKXsKICAgICAgICAgICAgZl9tYXhfMiggaSwgY29sLCBkYXQgKTsKICAgICAgICAgICAgZl9taW5fMiggaSwgY29sLCBkYXQgKTsKICAgICAgICAgICAgZl9hdmVfMiggaSwgY29sLCBkYXQgKTsKICAgICAgICAvL30KICAgICAgICBwcmludGYoICJcbiIgKTsKICAgIH0KfQoKCnZvaWQgICAgZl9tYXgoIGludCByb3csIGludCBjb2wsIGludCBkYXRbXVs1XSApCnsKICAgIGludCAgICAgaSwgaiwgazsKICAgIGludCAgICAgQW1heFs1XSwgbWF4WzVdOwoKICAgIHByaW50ZiggIm1heCIgKTsKICAgIGZvciggaSA9IDA7IGkgPCByb3c7IGkrKyApewogICAgICAgIGZvciggaiA9IDA7IGogPCBjb2w7IGorKyApewogICAgICAgICAgICBpZiggZGF0W2ldW2pdID4gbWF4W2pdICl7CiAgICAgICAgICAgICAgICBtYXhbal0gPSBkYXRbaV1bal07CiAgICAgICAgICAgICAgICBBbWF4W2pdID0gbWF4W2pdOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQogICAgZm9yKCBrID0gMDsgayA8IGNvbDsgaysrICl7CiAgICAgICAgcHJpbnRmKCAiJTVkIiwgQW1heFtrXSApOwogICAgfQogICAgcHJpbnRmKCAiXG4iICk7Cn0KCgp2b2lkICAgIGZfbWluKCBpbnQgcm93LCBpbnQgY29sLCBpbnQgZGF0W11bNV0gKQp7CiAgICBpbnQgICAgIGksIGosIGs7CiAgICBpbnQgICAgIEFtaW5bNV0sIG1pbls1XSA9IHsgOTksIDk5LCA5OSwgOTksIDk5IH0gOwoKICAgIHByaW50ZiggIm1pbiIgKTsKICAgIGZvciggaSA9IDA7IGkgPCByb3c7IGkrKyApewogICAgICAgIGZvciggaiA9IDA7IGogPCBjb2w7IGorKyApewogICAgICAgICAgICBpZiggZGF0W2ldW2pdIDwgbWluW2pdICl7CiAgICAgICAgICAgICAgICBtaW5bal0gPSBkYXRbaV1bal07CiAgICAgICAgICAgICAgICBBbWluW2pdID0gbWluW2pdOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQogICAgZm9yKCBrID0gMDsgayA8IGNvbDsgaysrICl7CiAgICAgICAgcHJpbnRmKCAiJTVkIiwgQW1pbltrXSApOwogICAgfQogICAgcHJpbnRmKCAiXG4iICk7Cn0KCgp2b2lkICAgIGZfYXZlKCBpbnQgcm93LCBpbnQgY29sLCBpbnQgZGF0W11bNV0gKQp7CiAgICBpbnQgICAgIGksIGosIHN1bTsKCiAgICBwcmludGYoICJhdmUgICIgKTsKICAgIGZvciggaiA9IDA7IGogPCBjb2w7IGorKyApewogICAgICAgIHN1bSA9IDA7CiAgICAgICAgZm9yKCBpID0gMDsgaSA8IHJvdzsgaSsrICl7CiAgICAgICAgICAgIHN1bSArPSBkYXRbaV1bal07CiAgICAgICAgfQogICAgICAgIHByaW50ZiggIiU1LjFmIiwgKGRvdWJsZSlzdW0gLyByb3cgKTsKICAgIH0KICAgIHByaW50ZiggIlxuIiApOwp9CgoKdm9pZCAgICBmX21heF8yKCBpbnQgcm93LCBpbnQgY29sLCBpbnQgZGF0W11bNV0gKQp7CiAgICBpbnQgICAgIGk7CiAgICBpbnQgICAgIEFtYXhfMiA9IDA7CgogICAgZm9yKCBpID0gMDsgaSA8IGNvbDsgaSsrICl7CiAgICAgICAgaWYoIGRhdFtyb3ddW2ldID4gQW1heF8yICl7CiAgICAgICAgICAgIEFtYXhfMiA9IGRhdFtyb3ddW2ldOwogICAgICAgIH0KICAgIH0KICAgIHByaW50ZiggIiU1ZCIsQW1heF8yICk7Cn0KCgp2b2lkICAgIGZfbWluXzIoIGludCByb3csIGludCBjb2wsIGludCBkYXRbXVs1XSApCnsKICAgIGludCAgICAgaTsKICAgIGludCAgICAgQW1pbl8yID0gOTk7CgogICAgZm9yKCBpID0gMDsgaSA8IGNvbDsgaSsrICl7CiAgICAgICAgaWYoIGRhdFtyb3ddW2ldIDwgQW1pbl8yICl7CiAgICAgICAgICAgIEFtaW5fMiA9IGRhdFtyb3ddW2ldOwogICAgICAgIH0KICAgIH0KICAgIHByaW50ZiggIiU1ZCIsIEFtaW5fMiApOwp9CgoKdm9pZCAgICBmX2F2ZV8yKCBpbnQgcm93LCBpbnQgY29sLCBpbnQgZGF0W11bNV0gKQp7CiAgICBpbnQgICAgIGk7CiAgICBpbnQgICAgIHN1bSA9IDA7CgogICAgZm9yKCBpID0gMDsgaSA8IGNvbDsgaSsrICl7CiAgICAgICAgc3VtICs9IGRhdFtyb3ddW2ldOwogICAgfQogICAgcHJpbnRmKCAiJTUuMWYiLCAoZG91YmxlKXN1bSAvIGNvbCApOwp9Cg==