问题 B: 编写函数:Swap (I) (Append Code)

题目描述

编写用来交换两个数的函数,使得“Append Code”中的main()函数能正确运行。


用C实现三个函数int_swap()、dbl_swap()、SWAP(),其中SWAP()是个带参宏。

用C++实现两个函数,都以swap()命名。

以上函数的调用格式见“Append Code”。这里不给出函数原型,它们的参数请通过main()函数自行确定。

输入

输入为4行,每行2个数。
输出

输出为4行,每行2个数。每行输出的两数为每行输入的逆序。
样例输入

12 57
9 -3
-12 4
3 5

样例输出

57 12
-3 9
4 -12
5 3

代码如下:

#include<stdio.h>
#define SWAP(t,a,b) t = a;a = b; b = t;
int int_swap(int *x1, int *y1)
{
	int t;
	t = *x1;
	*x1 = *y1;
	*y1 = t;
}
double dbl_swap(double *x2, double *y2)
{
	double t;
	t = *x2;
	*x2 = *y2;
	*y2 = t;
}

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);
}

发布了99 篇原创文章 · 获赞 63 · 访问量 6215

猜你喜欢

转载自blog.csdn.net/m0_43456002/article/details/103113957