C语言-三个数值按从小到大顺序替换原值
要求如下

void prtf(double * a,double * b,double *c){
double max,min,th,sum=*a+*b+*c;
max= *a > ( *b > *c ? *b : *c) ? *a : ( *b > *c ? *b : *c);//取最大值
//a是否大于(b和c中的最大值),如果是,则MAX=a,否则取(b和c中的最大值)
min= *a < ( *b < *c ? *b : *c) ? *a : ( *b < *c ? *b : *c);//取最小值
th=sum-max-min;
*c=max;
*b=th;
*a=min;
}
void main(void){
double a=3,b=4,c=5;
prtf(&a,&b,&c);
printf("%.2lf %.2lf %.2lf\n",a,b,c);
}
浙公网安备 33010602011771号