Java语言
程序设计 第三讲Java结构化编程主要内容
分支语句(if-else,switch)循环语句(while,do-while,for)循环嵌套和循环控制(break,continue)分支语句
通过条件的判断,转向不同的程序流程,以此实现流程控制。if-else语句这是最基本的分支语句。
语句形式
if(条件)语句块1[else语句块2]
分支流程及说明
说明:(1)if后必须是一个boolean型的数据。(2)else是可选的,如果此时条件为false,则这条语句将不执行具体操作。例:输入一个x值,输出相应的y值(用if语句求)。2x+1x≥0Y=x+10x<0
Java语言程序设计
importjava.util.Scanner;classTestIf1{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);System.out.print("x=?");doublex=sc.nextDouble();doubley;if(x>=0)y=2*x+1;elsey=x+10;System.out.println(x+"\t"+y);}}
//输入提示
例:闰年计算规律为:“四年一闰,百年不润,四百年再润”。输入一个年份,判断该年份是否为闰年。if-else语句的扩展形式
if(条件1)语句块1elseif(条件2)语句块2elseif(条件3)语句块3else语句块n
例:某企业工龄工资调整,工龄不到二年者不参与调整,其余员工中,工龄少于五年者按每年50元计算,工龄达五年少于十年者每年按65元计算,工龄达十年者每年按80元计算,工龄达十五年者每年按100元计算。此外,对达十二年以上者,额外增加200元。importjava.util.Scanner;classTestIf3{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);System.out.print("工龄?");
Java语言程序设计
intyear=sc.nextInt();intnum;if(year<2)num=0;elseif(year<5)num=year*50;elseif(year<10)num=year*65;elseif(year<15)num=year*80;elsenum=year*80;if(year>=12)num+=200;System.out.println(year+"\t"+num);}}switch语句switch是用基于整型数据的多分支判断
语句形式
switch(表达式){case值1:语句组1;case值2:语句组2;...default:default语句组;}
流程及说明:
(1)switch后的表达式,必须是byte,char,short或者int型的。(2)表达式的值与case后的值1、值2?进行比较,匹配的情况下流程转向。(3)break是可选的,可用来中断switch语句。
例:输入一百分制成绩,输出对应的等级。90~100分的等级为A,80~89分的等级为B,70~79分的等级为C,
Java语言程序设计
60~69分的等级为D,60分以下的等级为E。importjava.util.Scanner;classTestSwitch{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);System.out.print("Score?");intscore=sc.nextInt();chargrade;switch(score/10){case9:case10:grade='A';break;case8:grade='B';break;case7:grade='C';break;case6:grade='D';break;default:grade='E';}System.out.println(score+"\t"+grade);}}思考:如果程序中无break语句,运行结果会是怎样?练习:输入一月份,求该月的天数。
循环语句
程序经常需要重复一些操作。形成重复执行的一组语句称为一个循环。设计一个循环时,要考虑到循环的终点,否则循环会是无穷尽的。while语句
条件循环语句形式
while(条件)语句块
例:求前100个自然数的和。
Java语言程序设计