并且在第一个指针s指向的元素小于第二个指针t指向的元素时,交换两个指针的指向但是不在内存中交换元素,即s指向p先前的元素,p指向s先前指向的元素,且把两者中最大的元素的指针作为返回值。
所以在Main函数中,3的指针作为第1个参数,5的指针作为第2个参数,因为3<5,所以执行交换p和q,最大值指针即为p指向5,所以r也指向5,q指向3 。即i=3,j=5,*p=5,*q=3,*r=5
scanf("%6f",&x) 表示 输入的 数是 float 型 浮点数,数字符号 占6个字符的位置。%6.3f 用于输出格式,6个字符的位置,小数点下3位。用 scanf("%6.3f",&x) 语句可以执行。
其实 用 scanf("%f",&x) 更方便灵活,不限定 整数位小数位,不限定长度。
----
只有特殊情况才用 %6f 格式,例如:
float x,y
scanf("%6f%6f",&x,&y) // 特殊情况,输入数据 为 12.34512.345 没有空白分隔
printf("%f %f\n",x,y)