Problem E: 编写函数:Swap (I) (Append Code)

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”中用到的头文件、全局变量或宏的定义应自行补充。

头文件

int main()
{
    int x1, y1;
      
    cin>>x1>>y1;
    Swap(&x1, &y1);
    cout<<x1<<" "<<y1<<endl;
      
    cin>>x1>>y1;
    Swap(x1, y1);
    cout<<x1<<" "<<y1<<endl;
  
    double x2, y2;
      
    cin>>x2>>y2;
    Swap(&x2, &y2);
    cout<<x2<<" "<<y2<<endl;
      
    cin>>x2>>y2;
    Swap(x2, y2);
    cout<<x2<<" "<<y2<<endl;
}
解析:此题描述有问题,分析主函数,明显得出Swap有四种重载函数,int和double,传值和传地址。复习函数传地址值如何进行交换
ac代码
#include<iostream>
#include<iomanip>
using namespace std;
void Swap(int &x,int &y)
{
    int z;
    z=x;
    x=y;
    y=z;
}
void Swap(int *x,int *y)
{
    int z;
    z=*x;
    *x=*y;
    *y=z;
}
void Swap(double &x,double &y)
{
    double z;
    z=x;
    x=y;
    y=z;
}
void Swap(double *x,double *y)
{
    double z;
    z=*x;
    *x=*y;
    *y=z;
}

原文链接: https://www.cnblogs.com/Joe2019/p/13205106.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    Problem E: 编写函数:Swap (I) (Append Code)

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/360048

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年3月2日 下午1:04
下一篇 2023年3月2日 下午1:04

相关推荐