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
相关推荐
坚持编程的菜鸟13 小时前
模拟实现memmove
c语言·算法·模拟实现memmove
wabs66614 小时前
关于图论【最短路径之Dijkstra算法(堆优化版)|卡码网47.参加科学大会的思考】
数据结构·算法·图论·优先级队列·邻接表·小顶堆·卡码网
坚持编程的菜鸟15 小时前
编写判断大小端程序
c语言·算法·判断大小端
papaofdoudou15 小时前
判断排列逆序奇偶性的乘积判别法(范德蒙德符号法)
人工智能·算法
linux-hzh15 小时前
百日算法修炼 · Day 03
java·算法
问商十三载16 小时前
RAG 检索效果差怎么排查?2026 五层诊断法完整指南
开发语言·人工智能·windows·python·算法
不负岁月无痕16 小时前
简单理解操作系统结构
java·linux·c语言·开发语言·c++·面试
qq_4480111617 小时前
C语言中的指针函数和函数指针
java·c语言·开发语言
嵌入式老牛17 小时前
三相电气量采集模块设计(三)非同步采样时的精度提升
算法·精度·计量
clerly17 小时前
C语言如何实现继承?
c语言·多态·继承·封装·结构体