考虑下面的C程序。它打印什么?
null
# include <stdio.h> # define swapl (a, b) tmp = a; a = b; b = tmp void swap2 ( int a, int b) { int tmp; tmp = a; a = b; b = tmp; } void swap3 ( int *a, int *b) { int tmp; tmp = *a; *a = *b; *b = tmp; } int main () { int num1 = 5, num2 = 4, tmp; if (num1 < num2) {swap1 (num1, num2);} if (num1 < num2) {swap2 (num1 + 1, num2);} if (num1 >= num2) {swap3 (&num1, &num2);} printf ( "%d, %d" , num1, num2); } /* Add code here. Remove these lines if not writing code */ |
(A) 5, 5 (B) 5, 4 (C) 4, 5 (D) 4, 4 答复: (C) 说明: “如果(num1>=num2){swap3(&num1,&num2);}”语句为true,因此将执行引用调用。 这个问题的小测验
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END