1---变量A、B互换

三种方式:

    1.  C = A;  A= B; B = C; (水杯换水,再拿一个空杯子)

    2. 子函数+指针

/********************                                    通过 【指针,子函数】 互换变量 【A,B】存储的值                                                ********************/
#include<stdio.h>

void huhuan(int *, int *);

int main(void)
{
	int a = 3;
	int b = 5;

	huhuan(&a,&b);
	printf("a=%d,b=%d\n", a,b);

	return 0;
}

void huhuan(int * p, int * q)
{
	int  t;           
	  t = *p;
	*p = *q;
	*q =  t;

	return;
}
/*
		通过指针可以,将指针变量指向的普通变量存储的值,进行互换
*/

/********************                                     无法互换A,B                                                ********************/
/*#include<stdio.h>
int huhuan(int, int);
int main(void)
{
	int a = 3;
	int b = 5;

	huhuan(a,b);

	printf("a = %d, b = %d", a,b);

	return 0;
}
int huhuan(int a, int b)
{
	int t;
	t = a;
	a = b;
	b = t;
	return a,b;
}
/*
	无法互换的原因:根本原因,子函数中的a,b 与 主函数中的 a,b都是局部变量,互不影响。
*/

    3. 变量运算

/*
时间:2018.02.11
目的:变量“A”和“B”互换
*/
#include <stdio.h>
int main(void)
{
	int i = 3;
	int j = 4;
	i = i + j;    // 执行之后:i = 7, j = 4 
	j = i - j;     //                      i = 7, j = 3
	i = i - j;
	printf("i = %d, j = %d", i,j);
	return 0;
}

猜你喜欢

转载自blog.csdn.net/erlang_juan/article/details/80257635