java基础之do while 和while(附控制台计算器)

一、while语句的一般形式为:
while(表达式)语句
其中表达式是循环条件,语句为循环体。
while语句的语义是:计算表达式的值,当值为真(非0)时, 执行循环体语句。

二、do-while语句的一般形式为:
do
语句
while(表达式);
这个循环与while循环的不同在于:它先执行循环中的语句,然后再判断表达式是否为真, 如果为真则继续循环;如果为假, 则终止循环。因此, do-while循环至少要执行一次循环语句。
使用while语句应注意以下几点:
1、while语句中的表达式一般是关系表达或逻辑表达式,只要表达式的值为真(非0)即可继续循环。
2、循环体如包括有一个以上的语句,则必须用{}括起来,组成复合
import java.util.Scanner;
class Test1{
	public static void main(String[] args){

		System.out.println("*******************************");
		System.out.println("*     欢迎使用控制台计算器    *");
		System.out.println("*     作者:***  *");
		System.out.println("*******************************");
		Scanner sc = new Scanner(System.in);
		
		String opStr = "";
		System.out.print("请输入整数:");
		int num = sc.nextInt();
		String resultStr = num + " ";
		int result = num;
		do{
			int op = 0;
			do{
				System.out.print("选择运算符:1(+)  2(-)  3(*)  4(/):");
				op = sc.nextInt();
			}while(op != 1 && op != 2 && op != 3 && op != 4);

			
			opStr = checkOp(op);
			resultStr = resultStr + opStr + " ";
				
			System.out.print("请输入整数:");
			num = sc.nextInt();
			resultStr+= num + " ";

			switch(op){
				case 1:
					result += num;
					break;
				case 2:
					result -= num;
					break;
				case 3:
					result *= num;
					break;
				case 4:
					if(num == 0){
						System.out.println("被除数不能为0,请重新输入!");
						continue;
					}
					result /= num;
					break;
			}
			System.out.println("结果:" + result);

			System.out.println("(" + resultStr + ")");

			int op2 = 0;
			do{
				System.out.print("1(继续)   2(退出)   3(清空):");
				op2 = sc.nextInt();
			}while(op2 != 1 && op2 != 2 && op2 != 3);
			
			if(op2 == 2){
				System.out.println("谢谢使用!~ ~!");
				System.exit(0);
			}
			if(op2 == 3){
				op = 0;
				result = 0;
				resultStr = "";
				num = 0;
				opStr = "";
				System.out.println("已清空历史记录,请继续使用......");
				System.out.print("请输入整数:");
				num = sc.nextInt();
				resultStr = num + " ";
				result = num;
			}
		}while(true);
	}
	public static String checkOp(int num){
		switch(num){
			case 1:
				return "+";
			case 2:
				return "-";
			case 3:
				return "*";
			case 4:
				return "/";
		}
		return "";
	}
}

语句。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值