Demo4

it2026-09-28  10

import java.util.Scanner;

/**

要求用户输入一个计算表达式,可以使用加减乘除。只处理一次运算的,不要有连续加减乘除的表达式,且不做小数计算。(例:1+2+3)例如:1+2然后经过处理计算结果并输出:1+2=3@author Bonnie

/ public class Test06 { public static void main(String[] args) { Scanner scan = new Scanner(System.in); System.out.println(“请输入一个计算表达式:”); String n = scan.nextLine(); int index=0; if((index=n.indexOf("+"))>0) { int num1 = parseInt(n.substring(0,index)); int num2 = parseInt(n.substring(index+1)); System.out.println(n+"="+(num1+num2));; } else if((index=n.indexOf("-"))>0) { int num1 = parseInt(n.substring(0,index)); int num2 = parseInt(n.substring(index+1)); System.out.println(n+"="+(num1-num2));; } else if((index=n.indexOf(""))>0) { int num1 = parseInt(n.substring(0,index)); int num2 = parseInt(n.substring(index+1)); System.out.println(n+"="+(num1num2));; } else if((index=n.indexOf("/"))>0) { int num1 = parseInt(n.substring(0,index)); int num2 = parseInt(n.substring(index+1)); if(num2==0) { System.out.println(“除数不能为0!”); } System.out.println(n+"="+(num1/num2));; } else { System.out.println(“您输入的计算表达式有误!”); } } public static int parseInt(String str){ //最后要生成的数字 int num = 0; //临时变量,用于计算对应位数的数字 int flag = 0; for(int i=0;i<str.length();i++){ flag = (str.charAt(i)-48); / * 这里是将对应的数字计算为对应的位,例如百位数字就要用该数字乘以10的2次方 * 得到 * 可以用Math的相关方法处理(自行查看API文档) / for(int n=0;n<str.length()-1-i;n++){ flag=10; } num+=flag; } return num; } }

import java.util.Scanner;

/**

要求用户输入一个字符串,然后若该字符串是一个整数,则转换为整数后输出乘以10后的结果若是小数,则转换为一个小数后输出乘以5后的结果,若不是数字则输出"不是数字"需要使用正则表达式进行判断。@author Bonnie

*/

public class Test01 { public static void main(String[] args) { String i = “\d+”; String d = “\d+\.\d+”; Scanner scan = new Scanner(System.in); System.out.println(“请输入一个字符串:”); String l = scan.nextLine(); if(l.matches(i)) { int num = Integer.parseInt(l); System.out.println(“转换后的整数为:”+(num10)); } else if(l.matches(d)) { double num1 = Double.parseDouble(l); System.out.println(“转换后的小数是:”+(num15)); } else { System.out.println(“不是数字!”); } }

}

最新回复(0)