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
相关推荐
悠仁さん7 分钟前
数据结构 树 二叉树 堆 (链式二叉树模拟实现篇)
数据结构·算法
z2005093018 分钟前
今日算法(带回文问题的回溯)
算法·leetcode·回溯
洛水水19 分钟前
【力扣100题】55.编辑距离
算法·leetcode·动态规划
洛水水33 分钟前
【力扣100题】62.滑动窗口最大值
数据结构·算法·leetcode
IronMurphy37 分钟前
算法五十一 64. 最小路径和
算法
醒醒该学习了!40 分钟前
Prompt提示词——带有深度思考模型的提示方法(理论篇)
人工智能·算法·prompt
君为先-bey41 分钟前
Latte——视频生成的潜在扩散变换器
算法·机器学习·音视频·扩散模型
浅念-44 分钟前
LeetCode刷题专题:FloodFill泛滥填充算法剖析
数据结构·算法·leetcode·职场和发展·深度优先·宽度优先
笨蛋不要掉眼泪44 分钟前
Java并发编程:深入剖析 ArrayBlockingQueue
java·开发语言·算法·并发
菜菜的顾清寒1 小时前
力扣HOT100(33)二叉树的最大深度
算法·leetcode·职场和发展