编写函数交换两个int型指针所指向的值,调用并检查该函数,输出交换后的值。

原创 2012年03月27日 09:58:37

#include<iostream>
using namespace std;
void fun(int *&ip1,int *&ip2)
{
 int *temp=ip1;
 temp=ip2;
 ip2=ip1;
 ip1=temp;
}
int main()
{
 int a=12;
 int b=32;
 int *ipa=&a;
 int *ipb=&b;
 cout<<"Before swap:"<<*ipa<<" "<<*ipb<<'\n';
 cout<<ipa<<" "<<ipb<<'\n';
 cout<<a<<" "<<b<<'\n';
    fun(ipa,ipb);
 cout<<"After swap:"<<*ipa<<"   "<<*ipb<<'\n';
 cout<<ipa<<" "<<ipb<<'\n';
 cout<<a<<" "<<b<<'\n';
 return 0;
}
//问题:编写函数交换2个int型指针的值。
//前一个是交换指针所存放的存储地址,后一个是交换指针所指向的对象的值。

#include <iostream>
using namespace std;
void gcd(int *v1,int *v2)
{
 int temp=*v1;
 *v1=*v2;
 *v2=temp;
}

int main()
{
 int i,j;
 cin>>i>>j;
 int *ipa=&i;
 int *ipb=&j;
 cout<<*ipa<<"  "<<*ipb<<endl;
 cout<<ipa<<"  "<<ipb<<endl;
 cout<<i<<" "<<j<<endl;
 gcd(ipa,ipb);
 cout<<*ipa<<"  "<<*ipb<<endl;
 cout<<ipa<<"   "<<ipb<<endl;
 cout<<i<<" "<<j;
 return 0;

}


 

版权声明:本文为博主原创文章,未经博主允许也可以任意转载。

编写一个函数,用于交换两个变量的值

C语言(地址传递): void Swap(int *a,int *b) { int temp; int temp=*a; int *a=*b; int *b=temp; }j...

二、 编写函数int stat(int a[],int n,int c[][2])。a指向的数组中保存了由n个1位整数组成的数列(n为偶数)。函数从前至后依次将a数组中每两个相邻元素拼成一个不超过2位

/***************************************************** copyright (C), 2014-2015, Lighting Studio. C...

C语言利用指针在函数中交换两个数的思考

这个是一个深刻理解指针和函数的问题。本来自己当初很认真的看过这个问题,可是现在搞运维去了,对linux倒是挺熟的,结果把以前的知识忘了。哎,真是悲哀。今天突然今天有个人问我,我一时还有点懵,这里记录一...

指针之交换两个变量的值

方案1:不使用指针  如果不使用指针交换两个变量的值,坦白来说是个不可能完成的任务,你可能会写成这样的:   #include "stdio.h"void swap(int a,int b) { ...

通过函数给指针赋值(二)交换两个变量的值

交换两个数的值
  • wwkaven
  • wwkaven
  • 2014年07月31日 07:33
  • 486

【C语言】编写一个函数,传入a,b两个int类型的变量,返回两个值的最大公约数。(辗转相除法和常规求法)

/*编写一个函数,传入a,b两个int类型的变量,返回两个值的最大公约数。 例如:输入传入(0 , 5)函数返回5,传入(10 , 9)函数返回1,传入(12 , 4)函数返回4 */ #includ...

函数指针,用typedef定义函数指针的好处,输出各中基本类型如int,char,float,double型中最大值

先看看没有定义函数指针的这道题,目的都是输出数组中最大值: #include #include #include using namespace std; void * intMax(voi...

程序猿之---C语言细节27(函数无参数时细节、函数默认返回int型证明、return默认还回值、void指针++操作)

函数无参数时细节、函数默认返回int型证明、return默认还回值、void指针++操作...

C和指针之函数递归实现把amount表示的值转换为单词形式written_amount(unsigned int amount,char *buffer)

1、题目  编写函数  void written_amount(unsigned int amount,char *buffer);  它把amount表示的值转换为单词形式,并储存于b...

输入a,b,c三个整数,按由大到小顺序输出。(用3个指针变量指向3个整形变量,然后用swap函数来实现互换3个整型变量的值)

/* * Copyright (c) 2012, 烟台大学计算机学院 * All rights reserved. * 作 者: 刘同宾 ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:编写函数交换两个int型指针所指向的值,调用并检查该函数,输出交换后的值。
举报原因:
原因补充:

(最多只允许输入30个字)