Ⅰ 用c语言编写程序实现两个整数交换值
#include<stdio.h>
intmain()
{
intx,y,t;
printf("请输入二个整数: ");
scanf("%d%d",&x,&y);
printf("输入的二个数为:x=%d,y=%d ");
t=x;
x=y;
y=t;
printf("交换后的二个数为:x=%d,y=%d ");
return0;
}
Ⅱ 在C语言中如何将两个数进行互换
将两个数进行互换的方法有两种形式:
1、借助中间变量完成,此方法直观,易理解,使用最多
2、不需要中间变量,通过变量身的运算完成交换。
参考代码:
方法1:
int a=2,b=3,t;
t=a; //先将a存储到临时变量t中
a=b; //将b存储到a中
b=t; //将临时变量中的原a值存储到b中
printf("a=%d b=%d\n", a,b );
方法2:
int a=2,b=3,t;
a += b ; //把两数之和存到a中
b= a-b ; //用两数和减去b可得原a,存储到b中
a= a-b ; //因为b现在是原a值,所以,用两数和减去b(原a)可得 原b,存储到a中
此方法,还可以用异或运算来实现,原理相同。
Ⅲ c语言交换两个数的函数
好像没有return(x,y)这种写法吧,这样写应该可以
void swap(int *x,int *y)
{
int c;
c=*x;
*x=*y;
*y=c;
}
Ⅳ 输入两个整数,交换后输出 C语言怎么编程
利用C语言来实现交换两个变量的值,需要定义三个变量:
#include<stdio.h>
int main()
{
int x,y,temp;//定义三个变量
printf("请输入分别x和y的值 ");
scanf("%d %d",&x,&y);//终端输入变量x、y
temp=y;//把y赋值给temp
y=x;//把x赋值给y
x=temp;//把y赋值给temp
printf("%d %d",x,y);//输出交换后x和y的值
return 0;
}
结果如下图所示:
(4)两数互换c语言代码扩展阅读
其他解决该问题的方法
需要定义两个变:
#include<stdio.h>
int main()
{
int x,y;//定义两个变量
printf("请输入分别x和y的值 ");
scanf("%d %d",&x,&y);//终端输入变量x、y
x=y-x;
y=y-x;//把x赋值给y
x=y+x;//把y赋值给x
printf("%d %d",x,y);//输出交换后x和y的值
return 0;
}
Ⅳ c语言如何编写两个数字数值交换
我们用C语言的时候,经常需要将两个数字交换,那么如何实现呢?下面我给大家分享一下。
工具/材料
Dev C++
- 01
首先我们在Dev C++软件中新建一个C语言项目,如下图所示
- 02
接下来我们在C语言文件中声明两个数字并输出,如下图所示
- 03
然后用一个中间变量对他们进行交换,如下图所示
- 04
最后运行编写好的C语言文件,我们就可以看到如下图所示的交换结果了
Ⅵ 输入两个整数,交换后输出 C语言怎么编程
/*源程序如下:*/
#include<stdio.h>
int
main()
{
int
x,y,z;/*定义三个数,x,y是输入的两个整数,z是用来交换的*/
scanf("%d,%d",
&x,&y);/*输入两个数中间用逗号分开*/
printf("原来的数x=%d,y=%d\n",x,y);/*输出原始数*/
z=x;/*实现交换*/
x=y;
y=z;
printf("交换后的数x=%d,y=%d\n",x,y);/*输出交换后的数*/
return
0;
}
/*VC++6.0测试结果如下:*/
Ⅶ C语言交换两个数字的代码
首先要捋顺一下,先看第一段程序。这段程序的目的就是为了将两个变量的数值进行交换。此时要明白指针的使用方法,这里的交换函数是void swap(int &x, int &y),即无返回值的函数,函数传递的参数是int &x和int &y,这两个东西是什么呢?这两个东西是定义的引用,而这个我们就可以理解为是两个用来存储传递进来的参数的地址的变量(这么说可能有点乱,其实就是将调用该函数是时传递进来的变量的地址给这两个参数),所以如果在这个swap函数中对这两个参数操作时,实际上就是对传递进来的那两个变量进行操作。至于你问的关于整型的问题,这个也很好理解,在c语言里地址就是整型的,而这两个变量定义的时候也是int整型的,所以无论是地址还是值都是整型的,而又因为*a和*b是一个指针指向的值,所以*a、*b是整型,而&a、&b是指针的地址,所以也是整型。
接下来看你第二段程序(你自己写的这个):
看程序前请仔细查看关于函数方面的资料,至于你这个return为什么是错的这个问题其实很简单,首先要了解一个函数的定义,定义函数简单的可以分为有返回值和无返回值的,有返回值的定义类似这样
int abc();
float bcd();
如上所示,函数名什么的都好理解,函数名前面的"int"和"float"是指函数返回的类型,即你这个函数在执行完之后需要用return语句返回一个值,而这个返回类型就是指这个返回值的类型。
还有一种是不需要返回值的,即
void abc();
void cde();
这类函数在执行完成后不需在最后添加return语句来返回值,如果添加了也用不了。
而你写的这个函数定义的是
int swap(int x,inty)
这里声明的是一个需要返回整型变量的函数,而这个函数里你的返回值语句return后没有跟任何变量或值,程序不知道你返回的是什么东西,所以会报错,这里一般都会填写return 0;表示程序执行完成。当然这个0也可以换成整型的变量。
最后说一下你这个程序,你这个程序在执行完成后是不会将需要交换的变量a和b的值进行交换的。这个关系到形参和实参的概念,请仔细查看书籍或看一些例子,你这个只是将形参的值交换了,真正的需要交换的值不会改变,也就是说你只是将a和b的两个值复制了一份,然后将复制了的那个交换了,当swap函数完成后又将复制了的那份删除掉了,所以说,不管怎样最初的a和b都没有受到任何影响。