if else语句的嵌套
if(表达式1)if(表达式2)语句1;else语句2;else 语句3;
C 语言规定了 if和else的就近匹配原则,即else和它上面的最近的没有配对的if配对,与书写格式无关
实例:
#include<stdio.h>#include<process.h>int main(void){int score;printf("请输入分数:");scanf("%d",&score);if(score>=60)printf("及格\n");if(score>90)printf("优秀\n");elseprintf("不及格\n");system("pause");}
打印结果:
分析原因:
else与离它最近的没有配对的if(score>=90)
配对。
如何纠正:
#include<stdio.h>#include<process.h>int main(void){int score;printf("请输入分数:");scanf("%d",&score);if(score>=60){printf("及格\n");if(score>90)printf("优秀\n");}elseprintf("不及格\n");system("pause");}
打印结果:
分析原因:
添加{}
后,else与第一个if配对。