ex12-1.c

次の ex12-1.c は、

  1. 1つのグローバル変数 a
  2. main() 関数内の2つのローカル変数 a
  3. fa() 関数内の2つのローカル変数 a

が定義されたプログラムである。

このプログラムソース内の printf() 文の出力文字列のみを修正し、いずれの変数 a の値であるかを出力するプログラム ex12-1.c を作成し、kiso2コマンドを用いて提出しなさい。

ex12-1.c
#include <stdio.h>
 
void fa(void);
int a = -1;
 
int main(void) {
  printf("a=%d\n", a);
  int a = 1; 
  {
    int a = 10;
    printf("a=%d\n", a);
    fa();
    a = 20;
  }
  a = 2;
  printf("a=%d\n", a);
  return 0;
}
 
void fa(void) {
  {
    int a = 100;
    {
      int a = 200;
      printf("a=%d\n", a);
      a = 300;
    }
    printf("a=%d\n", a);
  }
  a = -2;
  printf("a=%d\n", a);
}

実行例:

t180900@s01cd0542-160:~/kiso2-2018/ex12$ ./ex12-1
グローバル変数a=-1
main()関数の内側のa=10
fa()関数の内側のa=200
fa()関数の外側のa=100
グローバル変数a=-2
main()関数の外側のa=2
  • lecture/kiso2/base12.txt
  • 最終更新: 2018/12/13 12:40
  • by sano