`
hzy3774
  • 浏览: 993158 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

C语言不使用其他变量交换两个整型的值

 
阅读更多

 

#include <stdio.h>

void main(){
	int a = 3;
	int b = 4;

	a = a ^ b;//使用异或交换
	b = b ^ a;
	a = a ^ b;

	printf("%d, %d\n", a, b);

	a = a - b;//使用加减交换
	b = a + b;
	a = b - a;

	printf("%d, %d\n", a, b);

	a ^= b ^= a ^= b;

	printf("%d, %d\n", a, b);
}
 




  • 大小: 9.3 KB
分享到:
评论

相关推荐

    示例代码:不经过中间变量交换两个数

    以下是一段C语言代码示例,演示了如何使用位异或运算符实现不使用额外变量交换两个数的值: ```c void main() { int a = 3; int b = 1; // 第一步:a = a ^ b a = a ^ b; // a 的值现在是 3 ^ 1 = 2 // 第二...

    C语言在不创建变量的情况下,交换两个变量的数据(面试题)

    在C语言中,交换两个变量的数据是一个常见的编程问题,尤其在面试中经常出现。这个问题的挑战在于如何在不创建额外变量的情况下完成交换。通常,我们使用一个临时变量来存储其中一个变量的值,然后将另一个变量的值...

    C语言程序设计之交换两个数的值

    给定的代码中还包含了一个用于交换两个整数值的函数`swap`。 #### 函数实现 ```c int swap(int a, int b) { cout ()" ; cout ; a = a + b; b = a - b; a = a - b; cout ()" ; cout ; return 0; } ``` 在这...

    C语言中变量的实质

    为了更直观地理解指针的实际用途,可以考虑一个简单的例子:交换两个变量的值。如果不使用指针,可能需要一个临时变量来实现交换;但如果使用指针,则可以直接操作变量的内存地址: ```c void swap(int *x, int *y)...

    C语言程序设计-编写函数实现两个数据的交换,在主函数中输入任意三个数据,调用函数对这三个数据从大到小排序;.c

    C语言程序设计-编写函数实现两个数据的交换,在主函数中输入任意三个数据,调用函数对这三个数据从大到小排序;.c

    函数 可以交换两个整型变量的内容

    函数 可以交换两个整型变量的内容

    对两个整数通过函数调用交换其值,然后输出

    对两个整数通过函数调用交换其值,然后输出。首先定义一个函数,3个值交换。在主函数函数声明(可省略),调用函数,输入要交换的两个值

    c语言指针,指针与变量,指针与指针

    例如,`void swap(int *a, int *b)`函数可以通过交换`*a`和`*b`的值来实现两个整数的交换。此外,函数返回指针也是常见的做法,用于返回动态分配的内存或结构体等。 字符串在C语言中被视为字符数组,因此,指针也...

    C语言程序设计-程序举例两数交换.pptx

    在上面的代码中,我们首先定义了三个整型变量x、y和t,一个长整型变量sum。然后,我们使用scanf函数输入两整数x和y。接着,我们计算两数的和,并将其存储在sum变量中。 在交换两数之前,我们首先将x的值赋给t,然后...

    C语言中交换int型变量的值及转换为字符数组的方法

    不使用其他变量交换两个整型的值: #include &lt;stdio&gt; void main(){ int a = 3; int b = 4; a = a ^ b;//使用异或交换 b = b ^ a; a = a ^ b; printf(%d, %d\n, a, b); a = a - b;//使用加减交换 b = a...

    C语言函数使用

    在这个例子中,`add` 是一个函数,它接受两个整型参数 `a` 和 `b`,并返回它们的和。 #### 二、函数的返回值 C语言中的函数可以根据需要返回一个值。返回值的类型由函数头部指定的返回类型决定。如果没有返回值,则...

    c语言信号量的使用实例

    信号量本质上是一个整型变量,可以对其执行两种操作:`P`(或`wait`)操作和`V`(或`signal`)操作。 - **P操作**:如果信号量的值大于0,则减1;如果信号量的值小于等于0,则当前进程被阻塞。 - **V操作**:将信号...

    C语言的指针使用与结构体的使用

    }`这个函数可以交换两个整数的值。 接下来,我们转向“结构体”的讨论。结构体是C语言中用于组合不同类型数据的工具,它可以封装多个变量,形成一个复合类型。使用结构体的主要步骤如下: 1. **定义结构体**:...

    C语言第七章

    - **交换变量值**:使用指针可以轻松地在函数中交换两个变量的值。例如,定义一个 `swap` 函数,接收两个指向整数的指针,通过这两个指针可以交换两个整数的值。 - **空指针值**:表示一个指针未指向任何有效内存...

    最大公约数和最小公倍数(C语言)

    在这个程序中,我们首先定义了5个整型变量:m和n用来存储输入的两个整数,temp用于临时交换m和n的值,mod用于存储m除以n的余数,以及s用于存储两数的乘积,即它们的最小公倍数的初始值。 在main函数中,我们先给m和...

    c语言习题集

    - 使用临时变量交换两个整数的值。 2. **源程序**:使用`scanf`函数输入两个整数,使用临时变量交换它们的值,最后使用`printf`函数输出交换后的结果。 3. **常见错误**: - 忽略定义临时变量temp或误将其定义为...

    《你必须知道的495个C语言问题》

    3.14 如果我不使用表达式的值,那我应该用i++还是++i来做自增呢? 39 3.15 我要检查一个数是不是在另外两个数之间,为什么if(a b c)不行? 40 3.16 为什么如下的代码不对?int a=1000, b=1000; long int c=a * ...

    C语言指针课程PPT

    - 示例8.2演示了如何使用指针交换两个整数的值,而不直接交换变量。 掌握这些基本的指针概念和操作是理解和使用C语言高级特性的基础,对于编写高效且灵活的代码至关重要。理解指针的工作原理能帮助程序员更好地...

    C语言课本代码实现 谭浩强版

    5. **程序3.3**:定义两个整型变量`a`和`b`,将`a`设为最大值`32767`,`b`设为`a+1`,然后输出这两个变量的值。 6. **程序3.6**:定义两个字符型变量`c1`和`c2`,将它们的值分别设为ASCII码表中的`97`和`98`,然后以...

Global site tag (gtag.js) - Google Analytics