oj题目回顾(1056)C语言习题5.22--输出已交换后的两个值

来源:互联网 发布:pptv网络电视怎么看直播 编辑:程序博客网 时间:2024/06/05 15:58

问题及代码

Description

定义一个带参的宏(或者模板函数),带有三个参数,第一个参数为类型,后两个参数的值互换,并写出程序,输入两个数作为使用宏时的实参。输出已交换后的两个值。

Input

两个短整型数,空格隔开

两个小数,空格隔开

两个长整数,空格隔开

Output

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

Sample Input

1 21.5 2.565535 2147483647

Sample Output

2 12.5 1.52147483647 65535
/*烟台大学计算机学院 2016作者: 马春澎完成日期:2016年12月22日 */#include <stdio.h>#include <stdlib.h>#define SWAP(T,a,b) { T t;t=a;a=b;b=t;}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;}


 

运算结果

知识点总结

宏的应用

错题分析

不明白题目的含义,不知道宏定义的格式,不明白宏定义也可以进行运算

再做一遍后,明白了宏的用法。

回顾还是很有用的。

0 0
原创粉丝点击