❶ 在c语言中如何将两个数进行互换

方法1: 使用来一个临时变量来进源行保存,这应该也是大家最容易想到的方法,话不多说,直接上代码

参考代码:

#include<stdio.h>
intmain()
{inta=4;
intb=5;
intnTemp;
printf("交换前a,b的值为: ");
printf("a=%d ",a);
printf("b=%d ",b);
printf(" ");
nTemp=a;
a=b;
b=nTemp;
printf("----------------------------------我是分割线------------------------------------ ");
printf("交换前a,b的值为: ");
printf("a=%d ",a);
printf("b=%d ",b);
return0;
}

运行结果:

❷ c语言 将变量A和B的值进行互换 的程序

代码如下:#include<stdio.h>


#include <stdlib.h>

void swap1(int& a,int& b)//使用中间变量交换两个值


{


int temp = a;


a = b;


b = temp;


}

void swap2(int& a, int& b) //只用加法、减法、乘法也可以交换两个值


{


a = a + b;


b = a - b;


a = a - b;


}

void swap3(int& a, int& b) //使用位运算也可以交换两个值


{


a = a^b;


b = a^b;


a = a^b;


}

void main1mianshiti7()


{


int a1 = 1, b1 = 2;


int a2 = 10, b2 = 15;


int a3 = 78, b3 = 90;


int a = 2147483647, b = 1;


printf("a1=%p,b1=%p", &a1, &b1);


swap1(a1, b1);


swap2(a2, b2);


swap3(a3, b3);


printf("swap after~~~~~~~~~~~~~ ");


printf("a1=%d,b1=%d ", a1, b1);


printf("a2=%d,b2=%d ", a2, b2);


printf("a3=%d,b3=%d ", a3, b3);


swap2(a, b);


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


system("pause");


}

源代码截图:

C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。

二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。[1]目前2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。

C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。

其编译器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。

❸ c语言中如何实现两个字符的交换

有多种方法:
1 最常用的,中间变量法。
使用第三个中间变量交换a,b的值。
char a='-', b='+',c;
c = a;
a = b;
b = c;
实现专a,b值的交换。
2 利用加减法属交换。
交换a,b值可以用
a+=b;
b=a-b;
a=a-b;
3 利用异或交换:
交换a,b值的代码为:
a^=b;
b=a^b;
a=a^b;

❹ 在C语言中如何将两个数进行互换

将两个数进行互换的方法有两种形式:

1、借助中间变量完成,此方法直观,易理解,使用最多内

2、不需要容中间变量,通过变量身的运算完成交换。

参考代码:

方法1:
inta=2,b=3,t;
t=a;//先将a存储到临时变量t中
a=b;//将b存储到a中
b=t;//将临时变量中的原a值存储到b中
printf("a=%db=%d ",a,b);

方法2:
inta=2,b=3,t;
a+=b;//把两数之和存到a中
b=a-b;//用两数和减去b可得原a,存储到b中
a=a-b;//因为b现在是原a值,所以,用两数和减去b(原a)可得原b,存储到a中
此方法,还可以用异或运算来实现,原理相同。

❺ c语言中将两数互换位置的程序

利用参数将两数互换抄是最容易理解的方法。
例如想将a、b互换,利用参数c。
c=a;a=b;b=c;
先将a的值赋给c,这时c的值等于a的值。
再将b的值赋给a,这时c的值仍等于a的值,a的值换成了b的值。
最后将c的值赋给b,也就是将原先a的值赋给b,b的值换成了原来a的值。
从而实现了a、b两数的互换。
其实根本不需要引入参数c(利用参数只是最基础最容易理解的方法)。
直接将a、b互换:
a+=b;a-=b=a-b;
就可以直接将a、b的值互换。
当然,方法还有很多,例如还可以利用函数实现a、b的值互换。

❻ C语言ab互换

第一个传来递的是值,源就是说将实参的值赋值给形参了,就相当于int a,b; a=b; a的值改变了,并不影响b的值。

第二个传递的是地址,数组名表示的就是数组的首地址,所以形参 char a[] 其实就是 char *a;
将实参的地址赋值给 a了,所以形参改变了,实参也改变了。
这就相当于 int a;int *p =&a; 如果 *p发生了变化,a的值也跟着发生变化。

❼ C语言交换变量值的几种方法

方法一:三变量交换。

#include<stdio.h>
intmain(void)
{
inta,b;
scanf("%d%d",&a,&b);
intt=a;a=b;b=t;
printf("%d%d ",a,b);
return0;
}

方法二:加减交换

#include<stdio.h>
intmain(void)
{
inta,b;
scanf("%d%d",&a,&b);
a=a+b;
b=a-b;
a=a-b;
printf("%d%d ",a,b);
return0;
}

方法三:异或交换

#include<stdio.h>
intmain(void)
{
inta,b;
scanf("%d%d",&a,&b);
a=a^b;b=b^a;a=a^b;//可写成a^=b^=a^=b;
printf("%d%d ",a,b);
return0;
}

方法四(黑盒测试下):不交换

#include<stdio.h>
intmain(void)
{
inta,b;
scanf("%d%d",&a,&b);
printf("%d%d ",b,a);
return0;
}

❽ C语言行列按位互换

#include<stdio.h>
void main()
{
int a[2][3]={{1,2,3},{4,5,6}};
int b[3][2],i,j;
printf("array a:\n");
for(i=0;i<=1;i++)
{
for(j=0;j<=2;j++)
{
printf("%d",a[i][j]);
b[j][i]=a[i][j];
}
printf("\n");
}
printf("array b:\n");//括号内你缺少右边的引号
for(i=0;i<=2;i++)//注意i的取值
{
for(j=0;j<=1;j++)//注意j的取值,i,j的值你刚好弄反了
{
printf("%d",b[i][j]);
}
printf("\n");//你缺少这行代码,不能有效的显示
}
}
我已经调试过了,能正确运行,如果不行的话,提出你具体的问题!

❾ C语言数值的交换

楼上的这个
a = a+b;
b = a-b;
a = a-b;
是个方法,是符合我们数学思维的方法,也是最初接触C语言的人可能想到的方法。 但是这样编程很不直观,不如t=a;a=b;b=t;来得快。

似乎在C++中有swap(a, b)模板函数,直接实现a,b交换。

想玩高级一点的话,可采用“换标不换值”的方法,用数组元素作为数组的下标,这种方法换逻辑不换存储。

#include <stdio.h>
void main()
{
int a=10,b=20;
int array1[2] = {10,20}; //存a、b值
int array2[2] = {0,1}; //存下标
b = array1[array2[0]];
a = array1[array2[1]];
printf("a=%d, b=%d\n",a,b);
}

这个方法在对结构体数组值交换中非常好用!因为结构体数组一般每个成员都有很多个值,如:
struct student
{
int num;
double score;
char name[20];
}stu[5]={{1,98,"ziguowen"},{2,88,"dongda"},{3,78,"haha"}};

//交换stu[0]和stu[1],需要
int n;
double s;
char n[20];
n = stu[0].num; stu[0].num = stu[1].num; stu[1].num = n;
s = stu[0].score; stu[0].score = stu[1].score; stu[1].score = s;
strcpy(n, stu[0].name); strcpy(stu[0].name, stu[1].name); strcpy(stu[0].name,s);

//而用下标的话,一个赋值语句即可,直接交换stu[0] 和 stu[1] 下标后全部交换!

❿ 在C语言中如何将两个数进行互换

定义 A ,B, C,
把A保存到C
把B保存到A
把C保存到B
这要就OK了!
int a, b , c;
c = a;
a = b;
b = c;