Description
编写用来交换两个数的函数,使得“Append Code”中的main()函数能正确运行。
-----------------------------------------------------------------------------
用C实现三个函数int_swap()、dbl_swap()、SWAP(),其中SWAP()是个带参宏。
用C++实现两个函数,都以swap()命名。
以上函数的调用格式见“Append Code”。这里不给出函数原型,它们的参数请通过main()函数自行确定。
Input
输入为4行,每行2个数。
Output
输出为4行,每行2个数。每行输出的两数为每行输入的逆序。
Sample Input
12 57
9 -3
-12 4
3 5
Sample Output
57 12
-3 9
4 -12
5 3
HINT
“Append Code”中用到的头文件、全局变量或宏的定义应自行补充。
Append Code
append.c, append.cc,
&&
#include<stdio.h>
#define SWAP(t, x, y){t = x;x = y;y = t;}/*定义swap应在一行内*/
int int_swap(int *x, int *y)
{
int num;
num = *x;
*x = *y;
*y = num;
}
int dbl_swap(double *x, double *y)
{
double num;
num = *x;
*x = *y;
*y = num;
}
int main()
{
int x1, y1, t1;
double x2, y2, t2;
scanf("%d %d", &x1, &y1);
int_swap(&x1, &y1);
printf("%d %d\n", x1, y1);
scanf("%d %d", &x1, &y1);
SWAP(t1, x1, y1);
printf("%d %d\n", x1, y1);
scanf("%lf %lf", &x2, &y2);
dbl_swap(&x2, &y2);
printf("%lg %lg\n", x2, y2);
scanf("%lf %lf", &x2, &y2);
SWAP(t2, x2, y2);
printf("%lg %lg\n", x2, y2);
}