主题:[讨论]求高手解答:有些地方我很不明白,都是些简单的地方,但都比较疑惑
对于if语句这里,我有一点不明白,如if(表达式)语句,按书上结合我的理解,那就是如果表达式成立,则运行语句。可是书上有这样一个程序我很不理解。
程序如下:void main()
{
float a,b,t;
scanf("%f,%f",&a,&b);
if(a>b)
{
t=a;
a=b;
b=t;
}
printf("%5.2f,%5.2f\n",a,b);
}
这是求输入两个实数,按代数值有小到大的顺序输出的那个例子,可是我就很不明白,不是像这种if(表达式)语句的形式,都是说如果表达式成立才运行的吗?那如果我先输入的值a比b小,那不是if后面的语句就不被执行了,那我觉得这个程序就是错的。可事实上是我的理解有问题,可我还是很想不通,请高手们帮帮忙。帮忙讲解一下,谢谢
程序如下:void main()
{
float a,b,t;
scanf("%f,%f",&a,&b);
if(a>b)
{
t=a;
a=b;
b=t;
}
printf("%5.2f,%5.2f\n",a,b);
}
这是求输入两个实数,按代数值有小到大的顺序输出的那个例子,可是我就很不明白,不是像这种if(表达式)语句的形式,都是说如果表达式成立才运行的吗?那如果我先输入的值a比b小,那不是if后面的语句就不被执行了,那我觉得这个程序就是错的。可事实上是我的理解有问题,可我还是很想不通,请高手们帮帮忙。帮忙讲解一下,谢谢