在main函数实现两个数的输入并用函数实现两个数的值相换
1. 方法一
void f(int *x,int *y)//定义、声明函数
{
int t;//临时变量
t=*x;
*x=*y;
*y=t;//关于汉诺塔这个是最简单的算法
}
#include<stdio.h>
main()
{
int a,b;
printf("输入两个数:");
scanf("%d,%d",&a,&b);
int *x=&a;
int *y=&b;
f(x,y);//调函数
printf("%d,%d",*x,*y);//输出值
}
2. 方法二
void f(int *x,int *y)//定义、声明函数
{
*x+=*y;
*y=*x-*y;
*x-=*y;
}
#include<stdio.h>
main()
{
int a,b;
printf("输入两个数:");
scanf("%d,%d",&a,&b);
int *x=&a;
int *y=&b;//将a,b赋给*x,*y
f(x,y);//调用函数
printf("%d,%d",*x,*y); //输出两个值互换后的值
}
注意:
输入时两个数字之间要用逗号隔开,不然可能出错
也可以用空格隔开,按个人喜好设置