#include <stdio.h>
#define DSIZE 10
void input( int * array) ;
void output( int * array) ;
void min( int * array) ;
void max( int * array) ;
void total( int * array) ;
void ave( int * array) ;
void input( int * array)
{
int i;
for ( i = 0 ; i < DSIZE; i++ )
{
printf ( " Input %2dth data :" , i
+ 1 ) ;
array++;
}
}
void output( int * array)
{
int i;
for ( i = 0 ; i < DSIZE; i++ )
{
array++;
}
}
void min( int * array)
{
int i, j, num;
for ( i = 0 ; i < DSIZE - 1 ; i++ )
{
for ( j = i + 1 ; j < DSIZE; ++ j)
{
if ( array[ i] < array[ j] )
{
num = array[ i] ;
array[ i] = array[ j] ;
array[ j] = num;
}
}
}
for ( i = 0 ; i < DSIZE; i++ )
}
void max( int * array)
{
int i, j, num;
for ( i = 0 ; i < DSIZE; i++ )
{
for ( j = i + 1 ; j < DSIZE; j++ )
{
if ( array[ i] < array[ j] )
{
num = array[ i] ;
array[ i] = array[ j] ;
array[ j] = num;
}
}
}
for ( i = 0 ; i < DSIZE; i++ )
}
void total( int * array)
{
int i, sum;
for ( i = 0 ; i < DSIZE; i++ )
sum += array[ i] ;
printf ( "\n Total is %4d\n " , sum
) ; }
void ave( int * array)
{
int i;
double sum;
for ( i = 0 ; i < DSIZE; i++ )
sum += array[ i] ;
printf ( " Average is %.1f\n " , sum
/ 10.0 ) ; }
int main( void )
{
int array[ ] = { 1 , - 2 , 3 , - 5 , 7 , - 11 , 13 , - 15 , 17 , - 19 } ;
int code = 1 ;
printf ( "Welcome to array system\n " ) ; while ( code != 0 ) {
printf ( "\n Input data --> 1" ) ; printf ( "\n Output data --> 2" ) ; printf ( "\n Minimum sort --> 3" ) ; printf ( "\n Maximum sort --> 4" ) ; }
/* この部分でコマンドの解析を行い、それに対応した各関数を呼び出す */
//再入力
if ( code == 1 )
input( array) ;
//表示
if ( code == 2 )
output( array) ;
//昇順
if ( code == 3 )
min( array) ;
//降順
if ( code == 4 )
max( array) ;
//総和
if ( code == 5 )
total( array) ;
//平均値
if ( code == 6 )
ave( array) ;
return 0 ;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNkZWZpbmUgRFNJWkUgMTAKCnZvaWQgaW5wdXQoaW50ICphcnJheSk7CnZvaWQgb3V0cHV0KGludCAqYXJyYXkpOwp2b2lkIG1pbihpbnQgKmFycmF5KTsKdm9pZCBtYXgoaW50ICphcnJheSk7CnZvaWQgdG90YWwoaW50ICphcnJheSk7CnZvaWQgYXZlKGludCAqYXJyYXkpOwoKdm9pZCBpbnB1dChpbnQgKmFycmF5KQp7CglpbnQgaTsKCglmb3IoaSA9IDA7IGkgPCBEU0laRTsgaSsrKQoJewoJcHJpbnRmKCIgSW5wdXQgJTJkdGggZGF0YSA6IiwgaSArIDEpOwoJc2NhbmYoIiU0ZCIsIGFycmF5W2ldKTsKCglhcnJheSsrOwoJfQoJcHJpbnRmKCJcbiIpOwp9Cgp2b2lkIG91dHB1dChpbnQgKmFycmF5KQp7CglpbnQgaTsKCQoJcHJpbnRmKCJcbiBBcnJheSA6Iik7CgoJZm9yKGkgPSAwOyBpIDwgRFNJWkU7IGkrKykKCXsKCXByaW50ZigiJTRkIiwgYXJyYXlbaV0pOwoJYXJyYXkrKzsKCX0KCglwcmludGYoIlxuIik7Cn0KCnZvaWQgbWluKGludCAqYXJyYXkpCnsKICAgIGludCBpLCBqLCBudW07CiAgICAKICAgIGZvciAoaSA9IDA7IGkgPCBEU0laRSAtIDE7IGkrKykgCiAgICB7CiAgICAgICAgZm9yIChqID0gaSArIDE7IGogPCBEU0laRTsgKytqKSAKCXsKICAgICAgICAgICAgaWYgKGFycmF5W2ldIDwgYXJyYXlbal0pIAoJICAgIHsKICAgICAgICAgICAgICAgIG51bSA9IGFycmF5W2ldOwogICAgICAgICAgICAgICAgYXJyYXlbaV0gPSBhcnJheVtqXTsKICAgICAgICAgICAgICAgIGFycmF5W2pdID0gbnVtOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKCXByaW50ZigiXG4gQXJyYXkgOiIpOwoJCglmb3IoaSA9IDA7IGkgPCBEU0laRTsgaSsrKQoJcHJpbnRmKCIlNGQiLCBhcnJheVtpXSk7CgoJcHJpbnRmKCJcbiIpOwp9Cgp2b2lkIG1heChpbnQgKmFycmF5KQp7CQoJaW50IGksaixudW07CgkKCSAgZm9yIChpID0gMDsgaSA8IERTSVpFOyBpKyspCgl7CgkgICAgZm9yIChqID0gaSArIDE7IGogPCBEU0laRTsgaisrKQoJewoJICAgICAgaWYgKGFycmF5W2ldIDwgYXJyYXlbal0pCgkgICAgIHsKCSAgICAgICAgbnVtID0gIGFycmF5W2ldOwoJICAgICAgICBhcnJheVtpXSA9IGFycmF5W2pdOwoJICAgICAgICBhcnJheVtqXSA9IG51bTsKCSAgICAgIH0KCSAgICB9CgkgIH0KCglwcmludGYoIlxuIEFycmF5IDoiKTsKCQoJZm9yKGkgPSAwOyBpIDwgRFNJWkU7IGkrKykKCXByaW50ZigiJTRkIiwgYXJyYXlbaV0pOwoKCXByaW50ZigiXG4iKTsKfQoKdm9pZCB0b3RhbChpbnQgKmFycmF5KQp7CglpbnQgaSwgc3VtOwoJCglmb3IoaSA9IDA7IGkgPCBEU0laRTsgaSsrKQoJc3VtICs9IGFycmF5W2ldOwoKCXByaW50ZigiXG4gVG90YWwgaXMgJTRkXG4iLCBzdW0pOwp9Cgp2b2lkIGF2ZShpbnQgKmFycmF5KQp7CglpbnQgaTsKCWRvdWJsZSBzdW07CgkKCWZvcihpID0gMDsgaSA8IERTSVpFOyBpKyspCglzdW0gKz0gYXJyYXlbaV07CgoJcHJpbnRmKCIgQXZlcmFnZSBpcyAlLjFmXG4iLCBzdW0gLyAxMC4wKTsKfQoKCmludCBtYWluKHZvaWQpCnsKaW50IGFycmF5W10gPSB7IDEsIC0yLCAzLCAtNSwgNywgLTExLCAxMywgLTE1LCAxNywgLTE5IH07CmludCBjb2RlID0gMTsKCglwcmludGYoIldlbGNvbWUgdG8gYXJyYXkgc3lzdGVtXG4iKTsKCXdoaWxlKCBjb2RlICE9IDAgKSAgewoJCXByaW50ZigiXG4gSW5wdXQgZGF0YSAgIC0tPiAxIik7CgkJcHJpbnRmKCJcbiBPdXRwdXQgZGF0YSAgLS0+IDIiKTsKCQlwcmludGYoIlxuIE1pbmltdW0gc29ydCAtLT4gMyIpOwoJCXByaW50ZigiXG4gTWF4aW11bSBzb3J0IC0tPiA0Iik7CgkJcHJpbnRmKCJcbiBUb3RhbCAgICAgICAgLS0+IDUiKTsKCQlwcmludGYoIlxuIEF2ZXJhZ2UgICAgICAtLT4gNiIpOwoJCXByaW50ZigiXG4gRW5kICAgICAgICAgIC0tPiAwIik7CgkJcHJpbnRmKCJcblxuIElucHV0IENvbW1hbmQgOiAiKTsJc2NhbmYoIiVkIiwmY29kZSk7Cn0KLyrjgIDjgZPjga7pg6jliIbjgafjgrPjg57jg7Pjg4njga7op6PmnpDjgpLooYzjgYTjgIHjgZ3jgozjgavlr77lv5zjgZfjgZ/lkITplqLmlbDjgpLlkbzjgbPlh7rjgZnjgIAqLwoKLy/lho3lhaXlipsKaWYgKGNvZGUgPT0gMSkKaW5wdXQoYXJyYXkpOwoKLy/ooajnpLoKaWYgKGNvZGUgPT0gMikKb3V0cHV0KGFycmF5KTsKCi8v5piH6aCGCmlmIChjb2RlID09IDMpCm1pbihhcnJheSk7CgovL+mZjemghgppZiAoY29kZSA9PSA0KQptYXgoYXJyYXkpOwoKLy/nt4/lkowKaWYgKGNvZGUgPT0gNSkKdG90YWwoYXJyYXkpOwoKLy/lubPlnYflgKQKaWYgKGNvZGUgPT0gNikKYXZlKGFycmF5KTsKCnJldHVybiAwOwp9Cg==