交换两个数的值

 include "iostream.h"                         解法二:       #include "iostream.h"

void swap(int x,int y)                                       void swap(int *x,int *y)

{                                                            {

   int t;                                                       int t;

     t=x;x=y;y=t;                                               t=*x;*x=*y;*y=t;

                                                           }

void main()                                                   void main(){                                                            {

 int a=10,b=20;                                               int a=10,b=20;

 swap(a,b);                                                  swap(&a,&b);

cout<<"a="<<a<<"  "<<"b="<<b<<endl;                          cout<<"a="<<a<<" “<<”b=”<<b<<endl;

                                                          

 

 

请同学们想一下,哪一个能实现数值交换!

我来告诉大家,解法可以实现这个功能!

解法一:他把A的值给了X,把B的值给了Y,然后实现了X,Y值的交换,而A,B的值却没有交换!

解法二:它是用指针来实现交换功能的,它A的地址给了X,把B的地址给了Y,那么现在的*X,*Y的值是不是A,B的值了,然后它又把*X,*Y的值交换了,而X,Y是A,B的地址,那么是不是A,B的地址也交换了,那么A,B的值是不是也交换了!

如果你还是不懂,直接给我评论就可以了!!

posted @   奇奇博客  阅读(166)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示