返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >c语言如何实现两个值互相交换的函数
  • 376
分享到

c语言如何实现两个值互相交换的函数

2023-06-15 06:06:21 376人浏览 泡泡鱼
摘要

小编给大家分享一下C语言如何实现两个值互相交换的函数,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!c语言中实现两个值互换的函数。#include <

小编给大家分享一下C语言如何实现两个值互相交换的函数,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

c语言中实现两个值互换的函数。

#include <stdio.h>void swap(int n1, int n2){    int tmp;    tmp = n1;    n1 = n2;    n2 = tmp;}int main(void){    int a, b;    puts("please input two integers.");    printf("a = "); scanf("%d", &a);    printf("b = "); scanf("%d", &b);        swap(a, b);  //a、b作为实参传递给n1和n2,n1和n2实现了互换,但是值传递是单向的,n1和n2的值并不能返回到实参a、b中,因此a,b还是原来的值         printf("swapped a = %d\n", a);    printf("swapped b = %d\n", b);        return 0;}

c语言如何实现两个值互相交换的函数

将指针作为实参,可以对该指针指向的对象,也就是实参进行修改

#include <stdio.h>void swap2(int *n1, int *n2){    int tmp;    tmp = *n1;    *n1 = *n2;    *n2 = tmp;    } int main(void){    int a, b;    puts("please input two integers.");    printf("a = "); scanf("%d", &a);    printf("b = "); scanf("%d", &b);        swap2(&a, &b); //将a和b的指针作为实参传递给指针变量n1和n2,n1和n2称为指向a和b的指针,*n1和*n2分别为a和b的别名,对*n1和n2进行修改,就相当于对a和b进行修改         printf("\nswapped a = %d\n",a);    printf("swapped b = %d\n", b);        return 0;}

c语言如何实现两个值互相交换的函数

ps:下面看下C语言实现两数交换函数

我们可以引入一个简单的中间变量t进行两个数值交换。

int t;t=x;x=y;y=t;

然而在swap(int x,int y)被调用时,实参进行副本初始化,函数并没有访问调用传递的实参本身,因而也不会修改实参的值。
那么下列函数

void swap(int x, int y){       int t;       t=x;       x=y;       y=t;}

将达不到交换的目的。

c++中我们可以使用引用形参达到目的:

void swap(int &x, int &y){       int t;       t=x;       x=y;       y=t;}

那么在C语言中怎么实现交换函数呢?
利用指针值交换实现

#include<stdio.h>void swap(int *x, int *y){ int t;    t=*x; *x=*y; *y=t;}int main(){ int a=1,b=2; swap(&a,&b); printf("a=%d,b=%d",a,b); return 0;}

以上是“c语言如何实现两个值互相交换的函数”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网其他教程频道!

--结束END--

本文标题: c语言如何实现两个值互相交换的函数

本文链接: https://lsjlt.com/news/278538.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • c语言如何实现两个值互相交换的函数
    小编给大家分享一下c语言如何实现两个值互相交换的函数,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!c语言中实现两个值互换的函数。#include <...
    99+
    2023-06-15
  • c语言实现两个值互相交换的函数
    c语言中实现两个值互换的函数。 1、 #include <stdio.h> void swap(int n1, int n2) { int tmp; ...
    99+
    2024-04-02
  • C语言怎么交换两个数的值
    本文小编为大家详细介绍“C语言怎么交换两个数的值”,内容详细,步骤清晰,细节处理妥当,希望这篇“C语言怎么交换两个数的值”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。使用临时变量以下实例演示了交换两个浮点数的值。...
    99+
    2023-06-17
  • c语言中怎么交换两个数的值
    在C语言中,可以使用几种方法来交换两个数的值。1. 使用第三个变量:```cint a = 5;int b = 10;int temp;temp = a;a = b;b = temp;```2. 使用加减法:```cint a = 5;...
    99+
    2023-08-11
    c语言
  • C语言用fun函数实现两个数的交换方式
    目录用fun函数实现两个数的交换函数交换两个数,常见错误总结用fun函数实现两个数的交换 #include <stdio.h> void fun(int *x,int ...
    99+
    2022-12-08
    C语言fun函数 C语言两个数交换 C语言fun
  • C语言怎么交换两个变量的值
    在C语言中,可以使用一个临时变量来交换两个变量的值。具体步骤如下:1. 声明一个临时变量temp。2. 将第一个变量的值赋给temp...
    99+
    2023-08-18
    C语言
  • c语言函数如何求两个数的最大值
    目录c语言函数求两个数的最大值c语言​求十个数中的最大值解题思路具体代码总结c语言函数求两个数的最大值 #include <stdio.h> max(int a,int...
    99+
    2022-12-08
    c语言函数 求两个数最大值 c语言求最大值
  • C语言怎么实现两个整数相加
    这篇文章主要介绍“C语言怎么实现两个整数相加”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“C语言怎么实现两个整数相加”文章能帮助大家解决问题。使用 scanf() 来接收输入, printf() 与...
    99+
    2023-06-17
  • C语言不使用临时变量怎么交换两个整数的值
    本文小编为大家详细介绍“C语言不使用临时变量怎么交换两个整数的值”,内容详细,步骤清晰,细节处理妥当,希望这篇“C语言不使用临时变量怎么交换两个整数的值”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。不使用临时变量...
    99+
    2023-06-17
  • C语言怎么实现两个浮点数相乘
    本篇内容主要讲解“C语言怎么实现两个浮点数相乘”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C语言怎么实现两个浮点数相乘”吧!输入两个浮点数,计算乘积。实例#include <stdio....
    99+
    2023-06-17
  • 两个数组的交集-C语言/Java
    描述         给定两个数组 nums1 和 nums2 ,返回 它们的交集 。输出结果中的每个元素一定是 唯一 的。我们可以 不考虑输出结果的顺序。(1 ...
    99+
    2023-09-01
    c语言 java 算法
  • Go语言strconv包如何实现字符串和数值类型的相互转换
    这篇文章将为大家详细讲解有关Go语言strconv包如何实现字符串和数值类型的相互转换,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在实际开发中我们往往需要对一些常用的数据类型进行转换,如 string、...
    99+
    2023-06-14
  • C语言怎么实现两数相除
    本篇内容介绍了“C语言怎么实现两数相除”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!两数相除,如果有余数,输出余数。实例#include &...
    99+
    2023-06-17
  • java如何交换两个变量的值
    小编给大家分享一下java如何交换两个变量的值,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!交换两个变量的值public class Test...
    99+
    2023-06-27
  • php如何交换两个变量的值
    在PHP中,可以使用一个临时变量来交换两个变量的值。具体步骤如下:```php$a = 1;$b = 2;$temp = $a;$a...
    99+
    2023-08-23
    php
  • php怎么实现两个变量值的互换
    在PHP中,可以使用一个额外的变量来存储其中一个变量的值,然后再将其赋值给另一个变量,从而实现两个变量值的互换。以下是一个示例代码:...
    99+
    2023-08-19
    php
  • c语言怎么实现字符串与数字相互转换
    在C语言中,可以使用标准库函数来实现字符串与数字之间的相互转换。 字符串转数字:可以使用atoi()函数将字符串转换为整数,或者使...
    99+
    2024-02-29
    c语言
  • 如何使用php代码实现两个变量值的互换
    可以使用一个临时变量来实现两个变量值的互换。具体步骤如下:1. 定义两个变量并赋予初始值。2. 创建一个临时变量,并将其中一个变量的...
    99+
    2023-09-04
    php
  • Golang函数如何与其他语言交互?
    go 允许通过 cgo 和外部调用 (ffi) 与其他语言交互。cgo 用于调用 c 代码,而 ffi 可用于调用 javascript、python 等语言的函数。例如,可以使用 ff...
    99+
    2024-04-12
    golang 函数交互 python git
  • C++如何实现LeetCode两个数字相加
    这篇文章将为大家详细讲解有关C++如何实现LeetCode两个数字相加,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。[LeetCode] 2. Add Two Numbers 两个数字相加You are ...
    99+
    2023-06-20
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作