在if
语句中可能有多个if
语句,这些被称为嵌套if
语句。
例如:
在编程术语(嵌套if
语句)中,它对应于以下内容:
if(expression1)
{
StatementA;
if(expression2)
StatementB;
else
StatementC;
}
else
StatementD;
Statement E;
以下代码使用嵌套if
来分析数字值。
示例代码
#include <stdio.h>
#include <limits.h> // 引用宏 LONG_MAX
int main(void)
{
long test = 0L; // 存储要检查的整数
printf("输入一个小于 %ld 的整数:", LONG_MAX);
scanf(" %ld", &test);
// 通过除以2后检查余数来测试奇数或偶数
if(test % 2L == 0L)
{
printf("数字 %ld 是偶数", test);
// 现在检查数字除以2后是否为偶数
if((test/2L) % 2L == 0L)
{
printf("\n%ld的一半也是偶数", test);
printf("\n这有点意思.\n");
}
}
else
printf("数字 %ld 是奇数\n", test);
return 0;
}
编译并执行上面示例代码,得到以下结果:
hema@ubuntu:~/book$ gcc main.c
hema@ubuntu:~/book$ ./a.out
输入一个小于 9223372036854775807 的整数:47823341923
数字 47823341923 是奇数
hema@ubuntu:~/book$ ./a.out
输入一个小于 9223372036854775807 的整数:897894789436
数字 897894789436 是偶数
897894789436的一半也是偶数
这有点意思.