#include <stdio.h>
void swap(int *p1,int *p2) //聲明函數
void main()
{
	int a1,a2;
	int *ptr1,*ptr2; //定義指向整型變量的指針
	printf("請輸入兩個整數:\n");
	scanf("%d,%d",&a1,&a2);
	ptr1=&a1; //ptr1指向a1
	ptr2=&a2; //ptr2指向a2
	printf("&a1=%p,&a2=%p\n",&a1,&a2); //輸出a1和a2的地址
	printf("ptr1=%p,ptr2=%p\n",ptr1,ptr2); //輸出ptr1和ptr2的值(即指向變量的地址)
	swap(ptr1,ptr2); //函數調用。指針變量ptr1和ptr2作為函數的參數
	printf("a1=%d,a2=%d\n",a1,a2); //輸出a1和a2的值
	printf("*ptr1=%d,ptr2=%d\n",*ptr1,*ptr2); //輸出ptr1和ptr2所指向變量的a1及a2的值
	printf("&a1=%p,&a2=%p\n",&a1,&a2); //輸出a1和a2的地址
	printf("ptr1=%p,ptr2=%p\n",ptr1,ptr2); //輸出ptr1和ptr2的值(即a1和a2的地址) 
} 
void swap(int *p1,int *p2) //定義函數,參數為指針變量類型
{
	int t;
	t=*p1; 
	*p1=*p2;
	*p2=t;
}