#include <stdio.h>
int x;
void mondai1( int b)
{
x = b;
}
void mondai2( void )
{
static int c = 10 ;
x = c;
c++;
}
int mondai3( int d)
{
x++;
d++;
return d;
}
int main( void )
{
printf ( "x = %d [GA: グローバル変数は自動的に0で初期化される]\n " , x
) ; x = 101 ;
printf ( "x = %d [GA: グローバル変数xに101を代入した]\n " , x
) ; mondai1( 102 ) ;
printf ( "x = %d [GA: mondai1で引数bの102をグローバル変数xに代入した]\n " , x
) ; mondai2( ) ;
mondai2( ) ;
mondai2( ) ;
printf ( "x = %d [S: mondai2を3回実行し、static変数cが10、11、12と変化した]\n " , x
) ; for ( int i = 103 ; i < 104 ; i++ )
{
int x = i;
printf ( "x = %d [L: for文内のローカル変数xにiの103を代入した]\n " , x
) ; x = mondai3( i) ;
printf ( "x = %d [L: mondai3で引数dを1増やし、戻り値104を代入した]\n " , x
) ; }
printf ( "x = %d [GA: mondai3でグローバル変数xを12から13に増やした]\n " , x
) ; return 0 ;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CmludCB4Owp2b2lkIG1vbmRhaTEoaW50IGIpCnsKICAgIHggPSBiOwp9CnZvaWQgbW9uZGFpMih2b2lkKQp7CiAgICBzdGF0aWMgaW50IGMgPSAxMDsKICAgIHggPSBjOwogICAgYysrOwp9CmludCBtb25kYWkzKGludCBkKQp7CiAgICB4Kys7CiAgICBkKys7CiAgICByZXR1cm4gZDsKfQppbnQgbWFpbih2b2lkKQp7CiAgICBwcmludGYoInggPSAlZCBbR0E6IOOCsOODreODvOODkOODq+WkieaVsOOBr+iHquWLleeahOOBqzDjgafliJ3mnJ/ljJbjgZXjgozjgotdXG4iLCB4KTsKICAgIHggPSAxMDE7CiAgICBwcmludGYoInggPSAlZCBbR0E6IOOCsOODreODvOODkOODq+WkieaVsHjjgasxMDHjgpLku6PlhaXjgZfjgZ9dXG4iLCB4KTsKICAgIG1vbmRhaTEoMTAyKTsKICAgIHByaW50ZigieCA9ICVkIFtHQTogbW9uZGFpMeOBp+W8leaVsGLjga4xMDLjgpLjgrDjg63jg7zjg5Djg6vlpInmlbB444Gr5Luj5YWl44GX44GfXVxuIiwgeCk7CiAgICBtb25kYWkyKCk7CiAgICBtb25kYWkyKCk7CiAgICBtb25kYWkyKCk7CiAgICBwcmludGYoInggPSAlZCBbUzogbW9uZGFpMuOCkjPlm57lrp/ooYzjgZfjgIFzdGF0aWPlpInmlbBj44GMMTDjgIExMeOAgTEy44Go5aSJ5YyW44GX44GfXVxuIiwgeCk7CiAgICBmb3IgKGludCBpID0gMTAzOyBpIDwgMTA0OyBpKyspCiAgICB7CiAgICAgICAgaW50IHggPSBpOwogICAgICAgIHByaW50ZigieCA9ICVkIFtMOiBmb3LmloflhoXjga7jg63jg7zjgqvjg6vlpInmlbB444GraeOBrjEwM+OCkuS7o+WFpeOBl+OBn11cbiIsIHgpOwogICAgICAgIHggPSBtb25kYWkzKGkpOwogICAgICAgIHByaW50ZigieCA9ICVkIFtMOiBtb25kYWkz44Gn5byV5pWwZOOCkjHlopfjgoTjgZfjgIHmiLvjgorlgKQxMDTjgpLku6PlhaXjgZfjgZ9dXG4iLCB4KTsKICAgIH0KICAgIHByaW50ZigieCA9ICVkIFtHQTogbW9uZGFpM+OBp+OCsOODreODvOODkOODq+WkieaVsHjjgpIxMuOBi+OCiTEz44Gr5aKX44KE44GX44GfXVxuIiwgeCk7CiAgICByZXR1cm4gMDsKfQ==