|
|
发表于 2019-11-16 17:04:20
|
显示全部楼层
本帖最后由 jackz007 于 2019-11-16 17:08 编辑
这句代码有问题,格式描述字符串中不能出现回车符 '\n'。最好也不要出现空格、逗号之类,总之,越简单越好,可以避免意外。
- scanf("%d %d %d\n" , & a , & b , & c) ;
复制代码
改成下面这样:
- scanf("%d%d%d" , & a , & b , & c) ;
复制代码
改完代码就没问题了
我把楼主的代码简化了一下,谨供楼主参考:
- #include <stdio.h>
- void swap(int * pt1 , int * pt2)
- {
- int temp ;
- temp = * pt1 ;
- * pt1 = * pt2 ;
- * pt2 = temp ;
- }
- void exchange(int * q1 , int * q2 , int * q3)
- {
- if(* q1 < * q2) swap(q1 , q2) ;
- if(* q1 < * q3) swap(q1 , q3) ;
- if(* q2 < * q3) swap(q2 , q3) ;
- }
- int main(void)
- {
- int a , b , c ;
- scanf("%d%d%d" , & a , & b , & c) ;
- exchange(& a , & b , & c) ;
- printf("%d %d %d\n" , a , b , c) ;
- return 0 ;
- }
复制代码
|
|