首页 > 试题广场 >

编写函数实现两数交换(指针方式)

[编程题]编写函数实现两数交换(指针方式)
  • 热度指数:15312 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
编写一个函数,实现两个整数的交换,要求采用指针的方式实现。

输入描述:
键盘输入2个整数 m 和 n


输出描述:
输出交换后m 和 n 的值,中间使用空格隔开
示例1

输入

2
3

输出

3 2
#include <iostream>
using namespace std;


void Swap(int* x, int* y)
{
    *x ^= *y;
    *y ^= *x;
    *x ^= *y;
}

int main() 
{
    int m = 0;
    int n = 0;

    scanf("%d%d", &m, &n);

    Swap(&m, &n);

    printf("%d %d", m, n);

    return 0;
}

发表于 2024-03-27 11:55:34 回复(0)
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
void function(int* p, int* q)
{
    int tmp = *p;
    *p = *q;
    *q = tmp;
}
int main()
{
    int m = 0;
    int n = 0;
    scanf("%d%d", &m, &n);
    int* p = &m;
    int* q = &n;
    function(p, q);
    printf("%d %d", m, n);
    return 0;
}
编辑于 2024-01-27 19:12:56 回复(1)
#include<stdio.h>
void swap(int *a,int *b)
{
    int temp=*a;
    *a=*b;
    *b=temp;
}
int main ()
{
    int m,n=0;
    scanf("%d %d",&m,&n);
    swap(&m,&n);
    printf("%d %d",m,n);
    return 0;
}

编辑于 2024-01-14 17:21:15 回复(0)
//初学编程 加油~~
#include <stdio.h>

void to_exchange(int *&p) {
    int tmp;
    tmp = p[0];
    p[0] = p[1];
    p[1] = tmp;
}
int main() {
    int a[2];
    int *p=a;
    int i;
    for ( i=0; i <2; ++i) {
        scanf("%d",p+i);
    }
    to_exchange(p);
    for (int j = 0; j < 2; ++j) {
        printf("%d ",*(p+j));
    }
    return 0;
}
发表于 2023-01-29 19:36:03 回复(0)
#include<stdio.h>
void temp(int*x,int*y)
{
    int tem=0;
    tem=*x;
    *x=*y;
    *y=tem;
}
int main()
{
    int m=0;
    int n=0;
    scanf("%d %d",&m,&n);
    temp(&m,&n);
    printf("%d %d",m,n);
    
    
    return 0;
}

发表于 2022-05-19 11:52:29 回复(0)
#include <stdio.h>
void f(int * p,int * q)
{
    int t;
     t = *p;
    *p = *q;
    *q = t;
}
int main()
{
    int m,n;
    scanf("%d %d",&m,&n);
    f(&m,&n);
    printf("%d %d",m,n);
    return 0;
    
}
发表于 2022-03-30 16:21:55 回复(0)

问题信息

难度:
6条回答 900浏览

热门推荐

通过挑战的用户

查看代码