一、初始指针
①通过指针变量访问整型变量
#include<stdio.h>
int main()
{
int a,b;
int *pointer_1,*pointer_2;
a=100;b=10;
pointer_1=&a;
pointer_2=&b;
printf("%d,%d\n",a,b);
printf("%d,%d\n",*pointer_1,*pointer_2);
}
②输入a和b两个整数,按先大后小的顺序输出a和b。
#include<stdio.h>
int main()
{
int *p1,*p2,*p,a,b;
scanf("%d %d",&a,&b);
p1=&a;
p2=&b;
if(a<b)
{
p=p1;
p1=p2;
p2=p;
}
printf("a=%d , b=%d\n",a,b);
printf("max=%d,min=%d\n",*p1,*p2);
}
③输入a,b,c3个整数,按大小顺序输出。
#include<stdio.h>
int main()
{
int exchange(int *p1,int *p2,int *p3);
int a,b,c;
int *pointer_1,*pointer_2,*pointer_3;
printf("Please enter the three you want to compare number:\n");
scanf("%d %d %d",&a,&b,&c);
pointer_1=&a;
pointer_2=&b;
pointer_3=&c;
exchange(pointer_1,pointer_2,pointer_3);
printf("%d %d %d",a,b,c);
}
int exchange(int *p1,int *p2,int *p3)
{
int swap(int *pt1,int *pt2);
if(*p1<*p2)
{
swap(p1,p2);
}
if(*p1<*p3)
{
swap(p1,p3);
}
if(*p2<*p3)
{
swap(p2,p3);
}
}
int swap(int *p1,int *p2)
{
int temp;
temp=*p1;
*p1=*p2;
*p2=temp;
}
一定注意,在声明中,“ * ” 是定义指针;其他地方则表示取值符号;
&为取址符号。