i和else语句中,else可与另一个if连用,形成多层嵌套
输入一个整数,判断输入的整数是0,还是正/负数
if else可嵌套在else中,第二种可读性更高
#include<stdio.h>
int main()
{
int num = 0;
printf("输入一个整数");
scanf("%d", &num);
if (num == 0)
printf("输入的值是0\n");
else if (num < 0)
printf("输入的值是负数\n");
else
printf("输入的值是正数\n");
return 0;
}
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
int num = 0;
printf("输入一个整数");
scanf("%d", &num);
if (num == 0)
printf("输入的值是0\n");
else
{
if (num < 0)
printf("输入的值是负数\n");
else
printf("输入的值是正数\n");
}
return 0;
}
if else语句也可嵌套在if中
#include<stdio.h>
int main()
{
int num = 0;
scanf("%d", &num);
if (num > 0)
{
if (num % 2 == 1)
printf("%d是奇数!", num);
else
printf("%d是偶数!", num);
}
else
printf("%d不是正数!", num);
return 0;
}
练习
1 输入一个人的年龄
2 如果年龄<18岁,打印少年
3 如果年龄在18-44岁,打印青年
4 如果45-59,中老年
5 如果60-89,老年
6 如果90以上打印老寿星
#include<stdio.h>
int main()
{
int age = 0;
scanf("%d", &age);
if (age < 18)
printf("少年");
else
{
if (age <= 44)
printf("青年");
else
{
if (age <= 59)
printf("中老年");
else
{
if (age <= 89)
printf("老年");
else
printf("老寿星");
}
}
}
}
#include<stdio.h>
int main()
{
int age = 0;
scanf("%d", &age);
if (age < 18)
printf("少年");
else if (age <= 44)
printf("青年");
else if (age <= 59)
printf("中老年");
else if (age <= 89)
printf("老年");
else
printf("老寿星");
}