#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[GS:3行目でグローバル変数は自動的に0で初期化される]\n " , x
) ;
x = 101 ;
printf ( "x = %d[GS:24行目の101を代入]\n " , x
) ;
mondai1( 102 ) ;
printf ( "x = %d[GS:27行目でmondai1のグローバル変数xに102を代入]\n " , x
) ;
mondai2( ) ;
mondai2( ) ;
mondai2( ) ;
printf ( "x = %d[GS:31行目でmondai2のstaticの変数cから順番にmondai2を3回代入]\n " , x
) ;
for ( int i = 103 ; i < 104 ; i++ ) {
int x = i;
printf ( "x = %d[LA:36行目でfor文のiをxに代入]\n " , x
) ;
x = mondai3( i) ;
printf ( "x = %d[LA:37行目のiを代入し、mondai3で++されたのがreturnで戻ってくる]\n " , x
) ; }
printf ( "x = %d[GS:17行目でmondai3内でグローバル変数xを12から13に増加]\n " , x
) ;
return 0 ;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgeDsKCnZvaWQgbW9uZGFpMShpbnQgYikgewogICAgeCA9IGI7Cn0KCnZvaWQgbW9uZGFpMih2b2lkKSB7CiAgICBzdGF0aWMgaW50IGMgPSAxMDsKICAgIHggPSBjOwogICAgYysrOwp9CgppbnQgbW9uZGFpMyhpbnQgZCkgewogICAgeCsrOwogICAgZCsrOwogICAgcmV0dXJuIGQ7Cn0KCmludCBtYWluKHZvaWQpIHsKICAgIHByaW50ZigieCA9ICVkW0dTOjPooYznm67jgafjgrDjg63jg7zjg5Djg6vlpInmlbDjga/oh6rli5XnmoTjgasw44Gn5Yid5pyf5YyW44GV44KM44KLXVxuIiwgeCk7CgogICAgeCA9IDEwMTsKICAgIHByaW50ZigieCA9ICVkW0dTOjI06KGM55uu44GuMTAx44KS5Luj5YWlXVxuIiwgeCk7CgogICAgbW9uZGFpMSgxMDIpOwogICAgcHJpbnRmKCJ4ID0gJWRbR1M677yS77yX6KGM55uu44GnbW9uZGFpMeOBruOCsOODreODvOODkOODq+WkieaVsHjjgasxMDLjgpLku6PlhaVdXG4iLCB4KTsKCiAgICBtb25kYWkyKCk7CiAgICBtb25kYWkyKCk7CiAgICBtb25kYWkyKCk7CiAgICBwcmludGYoInggPSAlZFtHUzrvvJPvvJHooYznm67jgadtb25kYWky44Guc3RhdGlj44Gu5aSJ5pWwY+OBi+OCiemghueVquOBq21vbmRhaTLjgpIz5Zue5Luj5YWlXVxuIiwgeCk7CgogICAgZm9yIChpbnQgaSA9IDEwMzsgaSA8IDEwNDsgaSsrKSB7CiAgICAgICAgaW50IHggPSBpOwogICAgICAgIHByaW50ZigieCA9ICVkW0xBOu+8k++8luihjOebruOBp2ZvcuaWh+OBrmnjgpJ444Gr5Luj5YWlXVxuIiwgeCk7CgogICAgICAgIHggPSBtb25kYWkzKGkpOwogICAgICAgIHByaW50ZigieCA9ICVkW0xBOjM36KGM55uu44GuaeOCkuS7o+WFpeOBl+OAgW1vbmRhaTPjgacrK+OBleOCjOOBn+OBruOBjHJldHVybuOBp+aIu+OBo+OBpuOBj+OCi11cbiIsIHgpOwogICAgfQoKICAgIHByaW50ZigieCA9ICVkW0dTOu+8ke+8l+ihjOebruOBp21vbmRhaTPlhoXjgafjgrDjg63jg7zjg5Djg6vlpInmlbB444KSMTLjgYvjgokxM+OBq+Wil+WKoF1cbiIsIHgpOwoKICAgIHJldHVybiAwOwp9