初学。。。。大小数比较的问题。。。。
#include <stdio.h>void main (){
int swap (int*p1,int*p2,int*p3);
int *point1,*point2,*point3;
int a,b,c;
printf("请输入三个数字:");
scanf ("%d%d%d",&a,&b,&c);
point1=&a;point2=&b;point3=&c;
swap (*point1, *point2, *point3);
printf ("d% d% d%",*point1, *point2, *point3);
}
int swap (int*p1,int*p2,int*p3) {
int *p;
if (*p1<*p2){
p=p1;
p1=p2;
p2=p;
}
if (*p1<*p3){
p=p1;
p1=p3;
p3=p;
}
if(*p2<*p3){
p=p2;
p2=p3;
p3=p;
}
}
编译可以通过 运行也可以 但一输入数字 程序就出错。。。我实在不知道为啥。。。。谢谢!
你杂通过的
传参都传错
函数有返回值你函数里哪里有return
修改的应该是p1指向的数
你修改swap栈里的形参有啥意义? 本帖最后由 灰色小妖 于 2012-2-18 23:02 编辑
ccqiji 发表于 2012-2-18 16:34 http://bbs.fishc.com/static/image/common/back.gif
你杂通过的
传参都传错
函数有返回值你函数里哪里有return
...真哩通过了
那个printf ("d% d% d%",point1, point2, point3);
原来是在倒数第二行的
具体哪行错了。。。
我真的是初学。。。 本帖最后由 灰色小妖 于 2012-2-18 23:01 编辑
灰色小妖 发表于 2012-2-18 18:29 http://bbs.fishc.com/static/image/common/back.gif
...真哩通过了
那个printf ("d% d% d%"point1, point2, point3);
原来是在倒数第二行的
thank you~ 改好了 {:7_146:}咱们码农有力量,嘿{:7_146:}
页:
[1]