C 语言实例 - 交换两个数的值
使用临时变量
以下实例演示了交换两个浮点数的值。
实例
#include <stdio.h>
int main()
{
double firstNumber, secondNumber, temporaryVariable;
printf("输入第一个数字: ");
scanf("%lf", &firstNumber);
printf("输入第二个数字: ");
scanf("%lf",&secondNumber);
// 将第一个数的值赋值给 temporaryVariable
temporaryVariable = firstNumber;
// 第二个数的值赋值给 firstNumber
firstNumber = secondNumber;
// 将 temporaryVariable 赋值给 secondNumber
secondNumber = temporaryVariable;
printf("\n交换后, firstNumber = %.2lf\n", firstNumber);
printf("交换后, secondNumber = %.2lf", secondNumber);
return 0;
}
运行结果:
输入第一个数字: 1 输入第二个数字: 2 交换后, firstNumber = 2.00 交换后, secondNumber = 1.00
不使用临时变量
不使用临时变量交换两个整数的值:
实例
#include <stdio.h>
int main() {
int a, b;
a = 11;
b = 99;
printf("交换之前 - \n a = %d, b = %d \n\n", a, b);
a = a + b; // ( 11 + 99 = 110) 此时 a 的变量为两数之和,b 未改变
b = a - b; // ( 110 - 99 = 11)
a = a - b; // ( 110 - 11 = 99)
printf("交换后 - \n a = %d, b = %d \n", a, b);
}
运行结果:
交换之前 - a = 11, b = 99 交换后 - a = 99, b = 11
菜鸟
499***827@qq.com
参考方法:
菜鸟
499***827@qq.com
hy
297***8122@qq.com
利用位异或解决两个整形数据的交换:
hy
297***8122@qq.com
正一
151***10048@163.com
将两个变量的值交换,示例:
(1)定义一个中间变量 c 是最易懂的做法:
(2)不用定义中间变量,利用加减就可以实现:
(3)利用计算机逻辑实现
^:位运算同假异真。
正一
151***10048@163.com