Java程序流程控制(符号函数sgn、闰年判断)

19 篇文章 0 订阅
17 篇文章 0 订阅

选择、循环、跳转

块(block):复合语句;由一对{ }起来的Java语句
block控制着变量的作用域(scope)

public static void main(String[] args){
	int a;
	...
	{
	int a;
	int b;
	...
	}
	...
}

上面的代码中b的scope只在block内,在block外失去作用
并且Java不允许两个嵌套的块内声明两个名相同的变量如a

选择语句
1.if

if(条件)
statement

if(条件
{block}

条件为关系表达式(判断大小)或boolean

import java.io.*;
public class welcome{
	public static void main(String[] args) throws IOException{
		final int MAX_NUM=50;
		//键盘输入整数存放x中
		InputStreamReader ir;
		BufferedReader in;
		ir=new InputStreamReader(System.in);
		in=new BufferedReader(ir);
		System.out.println("Input x is");
		String s=in.readLine();
		int x=Integer.parseInt(s);
		
		if(x<MAX_NUM) {
			System.out.println("x="+x);
		}
	}
}

if-else结构
符号函数sgn(number)

x>0y=1
x=0y=0
x<0y=-1
import java.io.*;
public class welcome{
	public static void main(String[] args) throws IOException{
		
		InputStreamReader ir;
		BufferedReader in;
		ir=new InputStreamReader(System.in);
		in=new BufferedReader(ir);
		System.out.println("Input x is");
		String s=in.readLine();
		int x=Integer.parseInt(s);
		
		int y;
		if(x<0) {
			y=-1;
		}
		else if(x==0) {
			y=0;
		}
		else {
			y=1;
		}
		System.out.println("x="+x+" y="+y);
	}
}

闰年判断问题

import java.io.*;
public class welcome{
	public static void main(String[] args) throws IOException{
		
		InputStreamReader ir;
		BufferedReader in;
		ir=new InputStreamReader(System.in);
		in=new BufferedReader(ir);
		System.out.println("Input year is");
		String s=in.readLine();
		int year=Integer.parseInt(s);
		
		if(year%4==0&&year%100!=0||year%400==0) {
			System.out.println("year "+year+" is a leap year");
		}
		else {
			System.out.println("year "+year+" is not a leap year");
		}
	}
}
2.switch语句

1.多选项时if麻烦,可以尝试switch,不需要boolean流程控制语句
表达式只能返回int、byte、short和char。比如数据类型为double不能用switch
2.case后面的值必须是常量,所有case后面的值应不同
3.表达式的值和case字句的值不匹配时,执行default;如果没有default并且没有匹配值,不做任何操作,直接跳出switch
4.break用来执行完一个case分支之后程序跳出switch
5.case是一个查找匹配的入口

public class switchdemo{
	public static void main(String args[]){
	int month=4;
	String season;
	switch(month){
	case 12:
	case 1:
	case 2:
		season = "winter";
		break;
	case 3:
	case 4:
	case 5:;
		season = "spring";
		break;
	case 6:
	case 7:
	case 8:
		season = "summer";
		break;
	case 9:
	case 10:
	case 11:
		season = "autumn";
		break;
	default:
		season = "bogus month";
}
System.out.println(season);
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值