第十二周 OJ总结<5>--输出已交换后的两个值

本文介绍了一种通过宏定义实现不同类型数值交换的方法。利用预处理指令定义了一个通用宏,能够适用于短整型、双精度浮点型及长整型等不同数据类型的值交换。并通过示例演示了如何在C语言中应用此宏进行数值交换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >



Copyright (c) 2016,

烟台大学计算机与控制学院 All ringts reserved.

 文件名称:OJ总结<5>-输出已交换后的两个值

作 者:王兴振

完成日期:2016年11月18日

版 本 号:未知

题目描述:

  定义一个带参的宏(或者模板函数),带有三个参数,第一个参数为类型,后两个

数的值互换,并写出程序,输入两个数作为使用宏时的实参。输出已交换后的两个值。

输      入:

两个短整型数,空格隔开

两个小数,空格隔开

两个长整数,空格隔开

输      出:

  交换后的两个数,空格隔开

样例输入:

1 2

1.5 2.5

65535 2147483647

样例输出:

2 1

2.5 1.5

2147483647 65535

答      案:

#include<stdio.h>
#define SWAP(l,i,d)  {l f;f=i,i=d,d=f;}
int main()
 
{
 
    short int i1,i2;
 
    double d1,d2;
 
    long l1,l2;
 
    scanf("%hd%hd",&i1,&i2);
 
    SWAP(short int,i1,i2);
 
    printf("%hd %hd\n",i1,i2);
 
    scanf("%lf%lf",&d1,&d2);
 
    SWAP(double,d1,d2);
 
    printf("%g %g\n",d1,d2);
 
    scanf("%ld%ld",&l1,&l2);
 
    SWAP(long,l1,l2);
 
    printf("%ld %ld\n",l1,l2);
 
    return 0;
 
}

总     结:

  宏定义一个函数,只要注意好,这个题很容易作对。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值