变式 3:函数换不了,宏能换
前面学过:函数 swap(int a, int b) 换的只是形参,main 里的变量不变。宏不一样——它直接把代码替换到调用的地方,改的就是 x、y 自己。
输入三个身高(厘米),从低到高输出。下面用函数交换,结果没排好。把 #define SWAP 补成交换 a、b 的宏,再把三处 swap( 改成 SWAP(。例如输入 180 165 172,输出:
165 172 180
前面学过:函数 swap(int a, int b) 换的只是形参,main 里的变量不变。宏不一样——它直接把代码替换到调用的地方,改的就是 x、y 自己。
输入三个身高(厘米),从低到高输出。下面用函数交换,结果没排好。把 #define SWAP 补成交换 a、b 的宏,再把三处 swap( 改成 SWAP(。例如输入 180 165 172,输出:
165 172 180