每天一道C语言精选编程题之交换两个整数

题目描述

写⼀个函数Swap,可以交换两个整数的内容。注意必须实现成函数完成。
输⼊2个整数,调⽤⾃定义函数Swap,完成2个整数的交换。

解法思路

明确函数的作⽤,即交换两个整数的值。可以使⽤指针来实现,具体步骤如下:

  1. 定义⼀个函数 Swap ,参数是两个整型指针,表⽰需要交换值的两个整数变量的地址。
  2. 在函数中,使⽤⼀个临时变量来存储第⼀个整数变量的值。
  3. 将第二个整数变量的值赋给第⼀个整数变量。
  4. 将临时变量的值赋给第二个整数变量。
  5. 在调⽤函数时,将需要交换值的两个整数变量的地址作为参数传递给函数,可以使⽤ & 运算符 来获取变量的地址。
解法代码
cpp 复制代码
#include <stdio.h>
//传⼊两个整型指针参数,进⾏交换
void Swap(int* pa, int* pb)
{
	int tmp = *pa;
	*pa = *pb;
	*pb = tmp;
}
int main()
{
	int a = 0;
	int b = 0;
	//输⼊
	scanf("%d %d", &a, &b);
	//将需要交换值的两个整数变量的地址作为参数传递给函数,进⾏交换
	Swap(&a, &b);
	//输出
	printf("%d %d\n", a, b);
	return 0;
}
运行结果

输入:

12 45

输出:

45 12

相关推荐
醇醛酸醚酮酯18 分钟前
Qt项目锻炼——TODO清单(二)
开发语言·数据库·qt
jioulongzi23 分钟前
记录一次莫名奇妙的跨域502(badgateway)错误
开发语言·python
向阳@向远方1 小时前
第二章 简单程序设计
开发语言·c++·算法
JeffersonZU1 小时前
Linux/Unix进程概念及基本操作(PID、内存布局、虚拟内存、环境变量、fork、exit、wait、exec、system)
linux·c语言·unix·gnu
Mr_Xuhhh1 小时前
信号与槽的总结
java·开发语言·数据库·c++·qt·系统架构
纳兰青华2 小时前
bean注入的过程中,Property of ‘java.util.ArrayList‘ type cannot be injected by ‘List‘
java·开发语言·spring·list
好开心啊没烦恼2 小时前
Python 数据分析:DataFrame,生成,用字典创建 DataFrame ,键值对数量不一样怎么办?
开发语言·python·数据挖掘·数据分析
github_czy2 小时前
RRF (Reciprocal Rank Fusion) 排序算法详解
算法·排序算法
liulilittle2 小时前
VGW 虚拟网关用户手册 (PPP PRIVATE NETWORK 基础设施)
开发语言·网络·c++·网关·智能路由器·路由器·通信
Devil枫2 小时前
Kotlin高级特性深度解析
android·开发语言·kotlin