#include <stdio.h>
struct s_data { /* 成績データ */
int max; /* 最高点 */
int min; /* 最低点 */
double avg; /* 平均点 */
};
struct s_data seiset( int *p );
int main( void )
{
struct s_data seiseki;
int ten[] = { 78, 86, 56, 77, 47, 63, 94, 37, 50, 74, -1 };
seiseki = seiset( ten ); /* 成績データの取得 */
printf( "最高点 = %d\n", seiseki.max );
printf( "最低点 = %d\n", seiseki.min );
printf( "平均点 = %4.1f\n", seiseki.avg );
return 0;
}
/*** 成績データの取得関数 ***/
struct s_data seiset( int *p )
{
struct s_data ret;
int i=0, goukei=0;
ret.max = *p;
ret.min = *p;
while( *p != -1 ) {
if( ret.max < *p )
ret.max = *p;
if( ret.min > *p )
ret.min = *p;
goukei += *p;
i++;
p++;
}
ret.avg = ( double ) goukei / i;
return ret;
}
▼戻る▼
「初心者のためのポイント学習C言語」 Copyright(c) 2000-2004 TOMOJI All Rights Reserved