<例題> 以下のプログラムを読もう。実行しよう。 #include <stdio.h> int main (void) { int a, b, tmp; printf("a = "); scanf("%d", &a); printf("b = "); scanf("%d", &b); printf ("BEFORE : a = %3d, b = %3d \n", a, b); tmp = a; a = b; b = tmp; printf (" AFTER : a = %3d, b = %3d \n", a, b); return (0); }
<問題>
#include <stdio.h> void swap (int *x, int *y); /* 引数xはアドレス。intを格納する */ int main (void) { int a, b, tmp; printf("a = "); scanf("%d", &a); printf("b = "); scanf("%d", &b); printf ("BEFORE : a = %3d, b = %3d \n", a, b); swap(&a, &b); /* swap関数の呼び出し。引数はアドレス渡し xとyのアドレス */ printf (" AFTER : a = %3d, b = %3d \n", a, b); return (0); } void swap (int *x, int *y){ /* よくわかるC p.81 Q7_3 と同じ問題。解答を確認 */ }