[求助]C关于按代数值由小到大次序输出数值问题
main(){
float a,b,t;
scanf("%f,%f",&a,&b);
if(a>b)
{t=a;a=b;b=t;} /*实现a和b互换*/ (为什么能这样写?)
printf("%5.2f,%5.2f\n",a,b);
}
t=a;a=b;b=t
楼主可能是没有搞清楚“等于”和“赋值”的意思。
就是说如果a>b,就把a的值给临时变量t,把b的值给a,最后把t的值给b,这样交换后就把最大的a放到后面去了。
t=a,是把a的值给临时变量t,而不是说t的值等于a的值。这里的=是赋值的意思。