#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[G変数:最初に宣言した時の値]\n",x
); x=101;
printf("x=%d[G変数:前列で101を代入]\n",x
); mondai1(102);
printf("x=%d[G変数:関数mondai1で102をxに代入]\n",x
); mondai2();
mondai2();
mondai2();
printf("x=%d[G変数:22~24行で関数mondai2でcの値を増加させxに代入]\n",x
); for(int i=103;i<104;i++){
int x=i;
printf("x=%d[L変数:前列でxにiの値を代入]\n",x
); x=mondai3(i);
printf("x=%d[L変数:関数mondai3呼び出して戻り値を代入、戻り値はiの値を代入して+1]\n",x
); }
printf("x=%d[G変数:29行で関数mondai3呼び出したときにx+1した値]\n",x
); return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CmludCB4Owp2b2lkIG1vbmRhaTEoaW50IGIpIHsKCXg9YjsKfQp2b2lkIG1vbmRhaTIodm9pZCl7CglzdGF0aWMgaW50IGM9MTA7Cgl4PWM7CgljKys7Cn0KaW50IG1vbmRhaTMoaW50IGQpewoJeCsrOwoJZCsrOwoJcmV0dXJuIGQ7Cn0KaW50IG1haW4odm9pZCkgewoJcHJpbnRmKCJ4PSVkW0flpInmlbDvvJrmnIDliJ3jgavlrqPoqIDjgZfjgZ/mmYLjga7lgKRdXG4iLHgpOwoJeD0xMDE7CglwcmludGYoIng9JWRbR+WkieaVsO+8muWJjeWIl+OBpzEwMeOCkuS7o+WFpV1cbiIseCk7Cgltb25kYWkxKDEwMik7CglwcmludGYoIng9JWRbR+WkieaVsO+8mumWouaVsG1vbmRhaTHjgacxMDLjgpJ444Gr5Luj5YWlXVxuIix4KTsKCW1vbmRhaTIoKTsKCW1vbmRhaTIoKTsKCW1vbmRhaTIoKTsKCXByaW50ZigieD0lZFtH5aSJ5pWw77yaMjLvvZ4yNOihjOOBp+mWouaVsG1vbmRhaTLjgadj44Gu5YCk44KS5aKX5Yqg44GV44GbeOOBq+S7o+WFpV1cbiIseCk7Cglmb3IoaW50IGk9MTAzO2k8MTA0O2krKyl7CgkJaW50IHg9aTsKCQlwcmludGYoIng9JWRbTOWkieaVsO+8muWJjeWIl+OBp3jjgatp44Gu5YCk44KS5Luj5YWlXVxuIix4KTsKCQl4PW1vbmRhaTMoaSk7CgkJcHJpbnRmKCJ4PSVkW0zlpInmlbDvvJrplqLmlbBtb25kYWkz5ZG844Gz5Ye644GX44Gm5oi744KK5YCk44KS5Luj5YWl44CB5oi744KK5YCk44GvaeOBruWApOOCkuS7o+WFpeOBl+OBpisxXVxuIix4KTsKCX0KCXByaW50ZigieD0lZFtH5aSJ5pWw77yaMjnooYzjgafplqLmlbBtb25kYWkz5ZG844Gz5Ye644GX44Gf44Go44GN44GreCsx44GX44Gf5YCkXVxuIix4KTsKCXJldHVybiAwOwp9