将三个整数从大到小输出(指针方法 麻烦高手给点思路!谢谢 呵呵)
看到一位仁兄的帖子 就是那个要将三个输入的整数从大到小输出的题目 就想看能不能用现在在学的指针给解决了,就写下了下面的代码,可是到后来自己都觉得很混乱,错误百出,都写不下去了,最后勉强写了“}",貌似终于写完了,可是一编译....................望高手指点一下思路,我原本的想法是先写一个swap函数,再用指针调用交换地址,实现大小的输出。#include<stdio.h>
int swap(int *a,int *b)
{
int temp;
int m,int n;
a=&m;
b=&n;
if(m<n)
{
temp=*a;
*a=*b;
*b=temp;
}
}
main()
{
int i,j,k;
int *p1,*p2,*p3;
p1=&i;
p2=&j;
p3=&k;
scanf("%d%d%d",&i,&j,&k);
swap(&i,swap(&j,&k));
printf("%d%d%d",*p1,*p2,*p3);
}
有什么可笑的地方,还望高手一笑的同时,给予指点,我刚学c..............