猿问

请帮忙看看, 这是指针与函数,哪里错了

#include <stdio.h>

int  main()

{

void exchange(int * q1, int * q2, int * q3);

int a,b,c,*p1,*p2,*p3;

printf("input:");

scanf("%d,%d,%d",&a,&b,&c);

p1=&a;

p2=&b;

p3=&c;

exchange(p1,p2,p3);

printf("%d,%d,%d\n",a,b,c);

return 0 ;


}

void exchange(int * q1, int * q2, int * q3)

{

void swap(int * pt1, int * pt2, int * pt3);

if( * q1< * q2) swap(q1,q2);

if( * q1< * q3) swap(q1,q3);

if( * q2< * q3) swap(q2,q3);

}

void swap(int * q1, int *q2, int * q3)

{

int temp;

temp= * pt1;

* pt1= * pt2;

* pt2=temp;

}



慕粉1401006384
浏览 959回答 1
1回答

望远

swap函数参数不匹配,你定义的参数有三个指针变量,实际传参只有两个。
随时随地看视频慕课网APP
我要回答