2110 : 程序改错 - 多语句宏
时间限制: 1 Sec 内存限制: 128 MB
题目描述
题目:交换变量,如果两个数奇偶性相同则交换,否则不交换
输入:多组数据,每组两个整数
输出:每组一行,交换或没交换过的两个整数
请将代码修正后提交:
#include <stdio.h>
#define swap(a,b,t) t=a;a=b;b=t
int main()
{
int a, b, t;
while (scanf("%d%d", &a, &b) != EOF)
{
if (a&1^b&1)
swap(a,b,t);
printf("%d %d\n", a, b);
}
return 0;
}
输入
多组数据,每组两个整数
输出
每组一行,交换或没交换过的两个整数
样例输入
1 3
2 4
样例输出
3 1
4 2
提示
来源
ajeyone
AC代码
#include <stdio.h>
#define swap(a,b,t) t=a;a=b;b=t
int main()
{
int a, b, t;
while (scanf("%d%d", &a, &b) != EOF)
{
if (((a%2)+(b%2))%2==0)
{
swap(a,b,t);
}
printf("%d %d\n", a, b);
}
return 0;
}