当前位置:文档之家› 项目4-2if条件分支语句

项目4-2if条件分支语句

项目4-2 if条件分支语句
重庆电力高等专科学校计算机科学系
项目要点
掌握if语句的单分支形式 掌握if语句的双分支形式 掌握if语句的多分支形式 掌握阅读if语句的技巧 掌握使用if语句进行选择结构设计
重庆电力高等专科学校计算机科学系
选择结构实现语句
单分支选择结构 双分支选择结构 if语句 if…else…语句
重庆电力高等专科学校计算机科学系
条件运算符和条件表达式
if(条件) 变量=表达式1; else 变量=表达式2;
变量=(条件)?表达式1:表达式2 等价
if(a>b) max=a; else max=b;
max=(a>b)?a:b 等价
重庆电力高等专科学校计算机科学系
试一试
问题:输入两个整数,输出其中的较大数 (用条件运算符完成)
#include "stdio.h" void main( ) { char ch , c; printf("Input a character:"); scanf(”%c”, &ch); if(ch>='A’&&ch<=’Z’); c=ch+32; else c=ch; printf(”%c”, c).3
1.if(表达式) 一般:
if语句使用注意事项
if(a>b) if(a>b && a<b)
特例:
if(a=5) if(a) if(a=b)
a=5表达式的值永远为非0
重庆电力高等专科学校计算机科学系
3.1.3
2.分支语句 一般:
if(条件) 一条语句;
作业1讲解
问题:输入一个年份,判断是否为闰年,是闰 年输出为“**是闰年!”,否则输出为 “**不是闰年!”。
闰年的条件是符合下面二者之一: 1)能被4整除,但不能被100整除。 2)能被100整除
(year%4==0&&year%100!=0)|| (year%100==0)
重庆电力高等专科学校计算机科学系
重庆电力高等专科学校计算机科学系
试一试
问题:输入两个整数,输出其中的较大数 (用if-else语句完成)
分析: 输入变量: 1个数a,1个数b 输出变量: a与b中的最大数max 1.输入两个数a,b 求解过程: 2.如果a>b,则max=a,否则max=b; 3. 输出max
重庆电力高等专科学校计算机科学系
方法二: 判别a,b的大小,若a 大,则输出a, 否则输出b
程序代码
#include "stdio.h" void main( ) { int a,b,max; printf(“请输入两个数: "); scanf("%d%d",&a,&b); if(a>b) max=a; else max=b; printf("max=%d\n",max); } #include "stdio.h" void main( ) { int a,b; printf(“请输入两个数: "); scanf("%d%d",&a,&b); if(a>b) printf("max=%d\n",a); else printf("max=%d\n",b); }
#include "stdio.h" void main( ) { int a,b; printf("\n input two numbers: "); scanf("%d%d",&a,&b); printf("max=%d",a>b?a:b); }
重庆电力高等专科学校计算机科学系
练一练:从键盘上输入一个字符,如果它是大写字母,则把 它转换成小写字母输出;否则,直接输出。
重庆电力高等专科学校计算机科学系
练习:
x x<1
有一函数:y=
2x-1 3x-11
1≤x<10 x≥10
用scanf函数输入x的值,求y值。 运行程序,输入x的值(分别为x<1、1≤x<10、 x≥10三种情 况),检查输出的y值是否正确。
重庆电力高等专科学校计算机科学系
#include <stdio.h> main() { float x,y; scanf(“%f”,&x); if(x<1) y=x; else if(x<10) y=2*x-1; else y=3*x-11; printf(“y=%.2f\n”,y); }
重庆电力高等专科学校计算机科学系
问题:输入两个整数,输出其中的较大数 (用if单分支语句完成)
分析: 输入变量: 1个数a,1个数b 输出变量: a与b中的最大数max 1.输入两个数a,b 求解过程: 2.假定max=a; 3.如果b>max,则max=b 4. 输出max
重庆电力高等专科学校计算机科学系
程序代码
#include "stdio.h" void main( ) { int a,b,max; printf("\n input two numbers: "); scanf("%d%d",&a,&b); max=a; if (max<b) max=b; printf("max=%d",max); }
重庆电力高等专科学校计算机科学系
2.双分支选择结构
格式:
if (表达式) ≠0 =0 { 表达式 语句1; 语句1 语句2 } else { 语句2; 执行过程:如果表达式的值为真,则执 } 行S1语句,否则执行S2语句
重庆电力高等专科学校计算机科学系
把多个语句用括号{}括起来组成的一个语句称复合语句。 在程序中应把复合语句看成是单条语句,而不是多条语句, 例如: { x=y+z; a=b+c; printf("%d%d",x,a); }
是一条复合语句。复合语句内的各条语句都必须以分号 “;”结尾,在括号“}”外不能加分号。在if语句的3种形式中, 所有的语句应为单个语句,如果要想在满足条件时执行一组 (多个)语句,则必须把这一组语句用{} 括起来组成一个复合 语句。
重庆电力高等专科学校计算机科学系
例: 求所输入数值的绝对值。
(1) 解题思路:将输入的数据与0比较,若小于0则取相反数再输 出,否则直接输出。
程序代码
#include "stdio.h" void main( ) { char c; printf("input a character: "); c=getchar( ); if(c<32) printf("This is a control character\n"); else if(c>='0'&&c<='9') printf("This is a digit\n"); else if(c>='A'&&c<='Z') printf("This is a capital letter\n"); else if(c>='a'&&c<='z') printf("This is a small letter\n"); else printf("This is an other character\n"); }
重庆电力高等专科学校计算机科学系
作业
1.输入一个年份,判断是否为闰年,是闰 年输出为“**是闰年!”,否则输出为 “**不是闰年!”。 2.体型判断。按公式计算:体指数t=体重 w/(身高h)2 (w单位为公斤,h单位为 米) 按“体指数”对肥胖程序进行划分:
当t<18时,为低体重; 当t介于18和25之间时,为正常体重; 当t介于25和27之间时,为超重体重; 当t>27时,为肥胖; 重庆电力高等专科学校计算机科学系
多分支选择结构
if…else if…语句 if嵌套语句 switch语句
重庆电力高等专科学校计算机科学系
4.1.2
1.单分支选择结构 格式: if (表达式) 语句;
if语句
表达式
≠0
0
语句
执行过程:如果表达式的值为真,则执行其后的 语句,否则不执行该语句
重庆电力高等专科学校计算机科学系
试一试
(2) 程序源代码: #include"stdio.h" main() { float x; printf("Please input x:\n"); scanf("%f",&x); /*输入数值*/ if(x<0) x=-x; /*若输入数值为负数,则取反*/ printf("The result is: %3.2f\n",x); }
程序代码
#include "stdio.h" void main() { int year; scanf("%d",&year); if((year%4==0&&year%100!=0)||(year%100==0)) printf("%d is a lear year!",year); else printf("%d isn't a lear year!",year); }
重庆电力高等专科学校计算机科学系
相关主题