把三个数从大到小的顺序输出,可能会一个一个的比较,这个会很麻烦,大多数情况下,都是两两比较然后和第三个数再比较大小,此程序主要是对条件语句的熟练应用。
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
int main()
{
int data1 = 0;
int data2 = 0;
int data3 = 0;
printf("please enter datas:");
scanf("%d%d%d",&data1,&data2,&data3);
if (data1 > data2)
{
if (data2 > data3)
{
printf("%d %d %d\n", data1, data2, data3);//从大到小的顺序123;
}
if (data3 > data1)
{
printf("%d %d %d\n", data3, data1, data2);//从大到小的顺序312;
}
else if (data1 > data3)
{
if (data1 > data3)
{
printf("%d %d %d\n", data1, data3, data2);//从大到小的顺序132;
}
}
}
else//判断data1<=data2;
{
if (data1 > data3)
{
printf("%d %d %d\n", data2, data1, data3); //从大到小的顺序213;
}
if (data3 > data2)
{
printf("%d %d %d\n", data3, data2, data1);//从大到小的顺序321;
}
else if (data2 > data3)
{
if (data3 > data1)
{
printf("%d %d %d\n", data2, data3, data1);//从大到小的顺序231;
}
}
}
system("pause");
return 0;
}
第一次if语句中,计算有三种结果,else也有三种结果。总共有6种结果。
注意if()语句的灵活运用。以及其嵌套,在if(else)语句中,记住else语句和它最近的if语句所匹配,这样就会减少出错的概率。if的语法如下:
if(表达式)
语句一
else
语句2.
如果表达式为真执行语句1,否则执行语句2.注意:C中没有bool值,而是用整形来代替,括号中的表达式可以是任何产生整形结果的表达式---零值表达“假”,非零值表式“真”。而C是拥有关系操作符,它们的结果是整形1或者0,而不是布尔值得“真”和“假”。
如下面一个小程序:
#include<stdio.h>
#include<stdlib.h>
int main()
{
int x = 3;
if (x > 3)
printf("输出:",x);
else
printf("不输出:",x);
system("pause");
return 0;
}
表达式:x>3的值是0或者1.
通过这个小程序对条件语句有新的认识,以及与布尔型的区别。