提交 8fee2449 编写于 作者: ASL_shaoyu's avatar ASL_shaoyu

交换两个整数的一些方法

上级 26ff7416
#include<stdio.h>
//写成函数
//void swap(long double* x, long double* y)
//{
// long double temp = *x;
// *x = *y;
// *y = temp;
// return 0;
//}
//int main()
//{
// long double a = 0, b = 0;
// printf("请输入两个数\n");
// scanf("%Lf%Lf", &a, &b);
// swap(&a,&b);
// printf("交换后:\n");
// printf("%.5f %.5f", a, b);
// return 0;
//}
// 传统方法
//int main() {
// int a = 0, b = 0;
// printf("请输入两个整数:\n");
// scanf("%d%d", &a, &b);
// int tep = 0;
// tep = a;
// a=b;
// b = tep;
// printf("交换后为:%d %d", a, b);
// return 0;
//}
//
//
//可能溢出:
//int main() {
// int a = 0, b = 0;
// printf("输入两个整数:\n");
// scanf("%d%d", &a, &b);
// a = a + b;
// b = a - b;
// a = a - b;
// printf("交换后:%d %d", a, b);
// return 0;
//}
//可读性差:
int main() {
int a = 0, b = 0;
printf("请输入两个整数:\n");
scanf("%d%d", &a, &b);
a = a ^ b;
b = a ^ b;
a = a ^ b;
printf("交换后:%d %d", a, b);
return 0;
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册