C 语言实例 - 使用引用循环替换数值

a、b、c 三个变量,通过引用按顺序循环替换他们的值。

c 复制代码
#include<stdio.h>
 
void cyclicSwap(int *a,int *b,int *c);
 
int main()
{
    int a, b, c;
 
    printf("输入 a, b 和 c 的值: ");
    scanf("%d %d %d",&a,&b,&c);
 
    printf("交换前:\n");
    printf("a = %d \nb = %d \nc = %d\n",a,b,c);
 
    cyclicSwap(&a, &b, &c);
 
    printf("交换后:\n");
    printf("a = %d \nb = %d \nc = %d",a, b, c);
 
    return 0;
}
void cyclicSwap(int *a,int *b,int *c)
{
 
    int temp;
 
    // 交换
    temp = *b;
    *b = *a;
    *a = *c;
    *c = temp;
}

输出结果为:

c 复制代码
输入 a, b 和 c 的值: 1 2 3
交换前:
a = 1 
b = 2 
c = 3
交换后:
a = 3 
b = 1 
c = 2
相关推荐
Logic1017 分钟前
C语言/数据结构贪心算法题解:买卖股票的最佳时机——一次交易最大利润(O(n)时间O(1)空间)
c语言·数据结构·贪心算法·数组·时间复杂度·算法题·股票交易
Logic10119 分钟前
C语言/数据结构位运算题解:异或XOR找出货币交易中的“独特面值“——只出现一次的数字
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
GreenTea1 小时前
发布 3 天登顶 HN:不生成一个字的模型 Jev,我把它的源码和黑料都扒了一遍
前端·后端·算法
庖丁解牛1 小时前
无穷小不是一个“神秘小数”,而是一场奔向 0 的过程
算法
ZPC82102 小时前
YOLO26 识别串番茄果梗
人工智能·深度学习·算法·机器学习
景熙55232 小时前
14.Java 集合框架从入门到源码万字详解(含 ArrayList/LinkedList/HashMap 源码、泛型通配符、红黑树)
java·开发语言·数据结构·算法
aaaameliaaa2 小时前
结构体 结构体
c语言·笔记·算法
是隼人3 小时前
buuctf-pwn PWN8题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
有Li3 小时前
【AI答疑】MR数据预处理步骤
人工智能·笔记·算法·语言模型·医学生
GG-_-Bond3 小时前
9.1kv存储持久化模拟面试
linux·c语言·数据结构·c++