if…else if…else 的用法
还记得前面写的一元二次方程的那个程序吗?那个程序就是用 if…else if…else 写的:
- # include <stdio.h>
- # include <math.h>
- int main(void)
- {
- int a = 1;
- int b = 2;
- int c = 1;
- double delta;
- double x1, x2;
- delta = b*b - 4*a*c;
- if (delta > 0)
- {
- x1 = (-b + sqrt(delta)) / (2*a);
- x2 = (-b - sqrt(delta)) / (2*a);
- printf("该一元二次方程有两个解,x1 = %f, x2 = %f\n", x1, x2);
- }
- else if (0 == delta)
- {
- x1 = (-b) / (2*a);
- x2 = x1;
- printf("该一元二次方程有一个唯一解,x1 = x2 = %f\n", x1);
- }
- else
- {
- printf("无解\n");
- }
- return 0;
- }
if…else if…else 比 if…else 复杂一点,但也很好理解。if…else if…else 的意思就是:“如果”第一个成立,就执行第一个;“否则如果”第二个成立就执行第二个;“否则”就执行第三个。这个应该很好理解吧,与我们平时讲话时的思维逻辑一样。