#include <stdio.h>
#define N 10
/*
auther:新生代小码农
date:2021-09-16
Question:使用指针的方式输入a和b两个整数,按照先大后小顺序输出a和b
(使用指针变量作为函数参数)
*/
void swap(int *change_1,int *change_2){//通俗来说这里是传地址所指的变量里面的对象,而不是指针
//把number_1和number_2中的地址传给了 change_1change_2,而 *change_1和*change_2是地址所指的值
int p;//地址所指向的值进行交换
p=*change_2;
*change_2=*change_1;
*change_1=p;
}
int main(){
int *number_1,*number_2,a,b;
printf("please input a and b:");
scanf("%d,%d",&a,&b);
number_1=&a;
number_2=&b;
if(a<b){//b是最大的话,那么把a的地址指向b
//需要一个零时地址
swap(number_1,number_2);//指针函数传递的是地址
}
printf("max=%d,min=%d",*number_1,*number_2);
return 0;
}
运行结果如下:
please input a and b:6,66
max=66,min=6
--------------------------------
Process exited with return value 0
Press any key to continue . . .