大学C语言教学第四章.ppt
文本预览下载声明
* 第4章 第四章 选择结构C程序设计 4.1 if结构 4.1.1 if语句(单分支结构) 4.1.2 if…else…语句(双分支结构) 4.1.3 if…else…if语句(多分支结构) 4.2 switch结构 本章小结 退出 4.1 if结构 if语句有单分支、双分支和多分支等结构,根据问题的不同,选择适当的结构。 if语句单分支结构的一般形式: if(表达式) 语句; 说明: (1) if语句中的“表达式”必须用“(”和“)”括起来。 (2) 表达式一般为关系表达式、逻辑表达式,也可为算术表达式,其值按非零为 Ture(真),零为False(假)进行判断。 (3) 单分支if语句的执行过程是先判断表达式是否为真,如果为真则执行语句, 如果为假,则不执行语句。 (4) 如果当条件成立要执行多个语句,就要使用“{ }”来构成复合语句。 例如:键盘输入一个整数a,若a0则输出“正数”,反之不输出任何信息结束程序。 #includestdio.h main( ) { int a; scanf(%d,a); if(a0) printf(正数); } 4.1.1 if语句(单分支结构) 4.1 if结构 if语句双分支结构的一般形式: if(表达式) 语句1; else 语句2; 说明: (1) else子句必须与if配对使用,不能单独使用。 (2) 当if和else下面的语句由多个语句组成时,要使用“{ }”来构成复合语句。 (3) 双分支if语句的执行过程是:首先计算if后面表达式的值,若结果为非零值,则执行if下的语句1而不执行语句2;否则不执行语句1而执行语句2。因此语句1和语句2只有一个会被执行。 例如:编程判断输入的正整数是否同时被3和5整除,若是,输出”YES”,否则输出“NO”。 #includestdio.h main() {int x; printf(enter number:); scanf(%d,x); 4.1.2 if…else…语句(双分支结构) if(x%3= =0 x%5= =0) printf(YES); else printf(NO); } 4.1 if结构 4.1.2 if…else…语句(双分支结构) 举例:输入x、y的值,并当xy时交换x、y的值,并输出x、y; main() {float x,y,temp; scanf(x=%f y=%f,x,y); if (x=y) else {temp=x; x=y; y=temp;} printf(x=%f y=%f\n,x,y); } 4.1 if结构 4.1.2 if…else…语句(双分支结构) 举例:从键盘输入年份year(4位十进制数),判断其是否闰年。闰年的条件:能被4整除、但不能被100整除,或者能被400整除。(分析书本P72 例4.5) #includestdio.h main() {int year; printf(please input the year:); scanf(%d,year); if ((year%4==0 year%100!=0) || (year%400==0)) printf(%d is a leap year.\n,year); else
显示全部