java小程序实例大全_12个用Java编写基础小程序&经典案例(收藏)

java小程序实例大全_12个用Java编写基础小程序&经典案例(收藏)原标题:12个用Java编写基础小程序&经典案例(收藏)如果是刚接触或者刚学习java,练习一些基础的算法还是必须的,可以提升思维和语法的使用。1、输出两个int数中的最大值importjava.util.Scanner;publicclassdemo{publicstaticvoidmain(String[]args){Scannerscanner=newSc…

大家好,又见面了,我是你们的朋友全栈君。

原标题:12个用Java编写基础小程序&经典案例(收藏)

如果是刚接触或者刚学习java,练习一些基础的算法还是必须的,可以提升思维和语法的使用。

1、输出两个int数中的最大值

ba485e7cc521084d82153ab62763e5a3.png

import java.util.Scanner;

public class demo {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

System.out.println(“请依次输入两个整数:a,b(以空格隔开)”);

/*比较两个数的大小*/

int a = scanner.nextInt();

int b = scanner.nextInt();

int max;

if(a >= b){

max = a;

}else {

max = b;

}

System.out.println(“最大值为”+max);

}

}

}

8c40971c3c26c12e80ee93db18fe1ed0.png

2、输出三个int数中的最大值

473d8226e4cd3c7e4815e29cbab5be42.png

package demo;

import java.util.Scanner;

public class demo {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

System.out.println(“请依次输入两个整数:a,b(以空格隔开)”);

int a = scanner.nextInt();

int b = scanner.nextInt();

int c = scanner.nextInt();

scanner.close();

/*方法一*/

int d=(a>b)?a:b;

int e=(d>c)?d:c;

System.out.println(“最大值为”+e);

/*方法二*/

if(a>b && a>c){

System.out.println(“最大值为”+a);

}else if(b>c && b>a){

System.out.println(“最大值为”+b);

}else if(c>b && c>a){

System.out.println(“最大值为”+c);

}else{

System.out.println(“出现异常”);

}

}

}

e5fec2b452039b21eef017be0fa7673b.png

3、编写程序判断某一个年份是否是闰年

package demo;

import java.util.Scanner;

/*判断闰年

由用户输入任意一个年份,能被4整除但不能被100整除,或者能被400整除,是闰年。

要求判断一个年份是否为闰年。

要求输出:此年份是否是闰年

*/

public class demo {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

System.out.println(“请输入年份:”);

int year = scanner.nextInt();

/*方法一*/

if((year % 4 ==0 && year % 100 !=0) || year%400 ==0){

System.out.println(“这个年份是闰年”);

}else{

System.out.println(“这个年份不是闰年”);

}

/*方法二*/

boolean isLeapYear = (year % 4 ==0 && year % 100 !=0) || year%400 ==0;

String string = isLeapYear?year+”是闰年”:year+”不是闰年”;

System.out.println(string);

}

}

4、完成成绩等级输出程序

如果用户输入的分数正确(0-100),则根据表-1中的规则计算该分数所对应的的级别,并计算结果。

f244e1f1ff75dfbe7a9f60dd1ee2f9c2.png

package demo;

import java.util.Scanner;

/*

* 成绩等级划分表

* >= 90 A

* >=80 B

* >=60 C

*<60 D

*

* 分数范围:0-100

*

* 需要有2个判断*/

public class demo {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

System.out.println(“请输入分数:”);

double score = scanner.nextDouble();

scanner.close();

if(score < 0 || score >100){

System.out.println(“输入的分数不在0-100之间,不符合要求”);

}else if(score >= 90){

System.out.println(“A”);

}else if(score >= 80){

System.out.println(“B”);

}else if(score >= 60){

System.out.println(“C”);

}else{

System.out.println(“D”);

}

}

}

5、完成命令解析程序

问题:有一个命令解析程序,该程序提供三个功能选型供用户选择,用户选择某功能后,程序在界面上输出用户所选择的的功能名称。程序的交互如图:

d3374da89c0ae051a81ae9efa91e06ca.png

0b432cf3b6d635042076b34ca1bbb9c9.png

package demo;

import java.util.Scanner;

/*

* 有一个命令解析程序,该程序提供三个功能选型供用户选择,

* 用户选择某功能后,程序在界面上输出用户所选择的的功能名称。

*

* */

public class demo {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

System.out.println(“请选择功能:1.显示全部记录 2.查询登录记录 0.退出”);

int command = scanner.nextInt();

scanner.close();

switch (command) {

case 0:

System.out.println(“欢迎使用”);

break;

case 1:

System.out.println(“显示全部记录……”);

break;

case 2:

System.out.println(“查询登录记录……”);

break;

default:

System.out.println(“输入错误!”);

}

}

}

2936cacc90fe89c29d1bac01bae8e2cc.png

6、完成收银柜台收款程序

编写一个收银柜台收款程序。根据单价、购买数量以及收款进行计算并输出应收金额和找零;当总价大于或者等于500,享受8折优惠。控制台交互如下:

dd74706265f3c7a95ae10048f989b52a.png

5e698a114cfaf98b19d793c72e1a09dc.png

package demo;

import java.util.Scanner;

/*

* 需求:

* 编写一个收银柜台收款程序。根据单价、购买数量以及收款进行计算并输出应收金额和找零;

* 当总价大于或者等于500,享受8折优惠。

*

*/

public class demo {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

System.out.println(“请输入单价(¥):”);

double price = scanner.nextDouble();

System.out.println(“请输入数量:”);

double amount = scanner.nextDouble();

System.out.println(“请输入收款金额:”);

double count = scanner.nextDouble();

double totalMoney = price*amount;

if(totalMoney > 500){

totalMoney = totalMoney*0.8;

}

double change = count – totalMoney;

System.out.println(“应收金额为:”+totalMoney + “找零为:”+change);

}

}

c59e5f4626b74c70f2d6aa1cc016a2f0.png

7、java从键盘输入三个整数,实现从小到大排序

package demo;

import java.util.Scanner;

/*

* java从键盘输入三个整数,实现从小到大排序

*

**/

public class demo {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

System.out.println(“请输入三个整数,以空格隔开:”);

int a = scanner.nextInt();

int b = scanner.nextInt();

int c = scanner.nextInt();

scanner.close();

System.out.println(“输入的值为:a = ” + a + “, b = ” + b + “, c = ” + c);

if(a > b){

if ( b > c) {

System.out.println(“排序后的值为:” + c + “,” + b + “,” + a);

}else if( c > a){

System.out.println(“排序后的值为:” + b + “,” + a + “,” + c);

}else{

System.out.println(“排序后的值为:” + b + “,” + a + “,” + c);

}

}else{

if(c < a){

System.out.println(“排序后的值为:” + c + “,” + a + “,” + b);

}else if(c > b){

System.out.println(“排序后的值为:” + a + “,” + b + “,” + c);

}else{

System.out.println(“排序后的值为:”+ a + “,” + c + “,” + b);

}

}

}

}

8、计算个人所得税

北京地区的个人所得税计算公式:

纳税额 = (工资薪金所得 – 扣除数)*适用税率 – 速算扣除数

其中,扣除数为3500,适用税率以及速算扣除数如下表所示:

504ca5e90bffe14c076dcb7020e1df7d.png

package demo;

import java.util.Scanner;

/*

* 北京地区的个人所得税计算公式:

应纳税额 = (工资薪金所得 – 扣除数)*适用税率 – 速算扣除数

其中,扣除数为3500

*/

public class demo {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

System.out.println(“请输入你的税前工资:”);

int salaryBeforeTax = scanner.nextInt();

scanner.close();

int taxSalary = salaryBeforeTax – 3500;

double tax;

/*方法一*/

tax = taxSalary<0?0.0:

taxSalary<=1500?taxSalary*0.03:

taxSalary<=4500?taxSalary*0.1-105:

taxSalary<=9000?taxSalary*0.2-555:

taxSalary<=35000?taxSalary*0.25-1005:

taxSalary<=55000?taxSalary*0.3-2755:

taxSalary<=80000?taxSalary*0.35-5505:

taxSalary*0.45-13505;

System.out.println(“个人应缴纳税款为:”+tax);

/*方法二*/

if( taxSalary < 0 ){

tax = 0;

}else if( taxSalary <= 1500){

tax = taxSalary*0.03;

}else if( taxSalary <= 4500){

tax = taxSalary*0.1-105;

}else if( taxSalary <= 9000){

tax = taxSalary*0.2-555;

}else if( taxSalary <= 35000){

tax = taxSalary*0.25-1005;

}else if( taxSalary <= 55000){

tax = taxSalary*0.3-2755;

}else if( taxSalary <= 80000){

tax = taxSalary*0.35-5505;

}else{

tax = taxSalary*0.45-13505;

}

System.out.println(“个人应缴纳税款为:”+tax);

}

}

9、输入年份和月份,输出天数

package demo;

import java.util.Scanner;

/*

提示:

1.需要判断是否是闰年,2月份的天数跟是否是闰年有关系;

2.用switch-case判断每个月的天数

*/

public class demo{

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

System.out.println(“请输入年份:”);

int year = scanner.nextInt();

System.out.println(“请输入月份:”);

int month = scanner.nextInt();

int dayNum = theDayNum(month); //先根据月份得出天数,如果是闰年,对2月份的天数重新获取

if(isLeapYear(year)){

if(month == 2){

dayNum ++; //如果是闰年,2月份增加一天

}

System.out.print(year + “是闰年,”);

}else{

System.out.print(year + “不是闰年,”);

}

System.out.println(year + “年” + month + “月份共有” + dayNum + “天”);

}

/*判断是否是闰年

* 能被4整除但不能被100整除,或者能被400整除,是闰年

*/

public static boolean isLeapYear(int year) {

if((year % 4 ==0 && year % 100 !=0) || year%400 ==0){

return true;

}else{

return false;

}

}

/*判断天数*/

public static int theDayNum(int month) {

switch (month) {

case 1:

return 31;

case 2:

return 28;

case 3:

return 31;

case 4:

return 30;

case 5:

return 31;

case 6:

return 30;

case 7:

return 31;

case 8:

return 31;

case 9:

return 30;

case 10:

return 31;

case 11:

return 30;

case 12:

return 31;

default:

System.out.println(“对不起,您输入的月份有误!”);

return 0;

}

}

}

10、输出九九乘法表

b6509d0dc217ae76ece01beab5c6fe2c.png

package demo;

/* author:wendy

* 问题:

* 直接输出九九乘法表

* */

public class demo {

public static void main(String[] args) {

//i变量用于控制行数

for(int i = 0; i <= 9; i++) {

//j变量用于控制每行中参与计算的数值

for(int j = 1; j <= i; j++) {

System.out.print(j + “*” + i + “=” + i*j + “t”);

}

//每行输出之后需要换行

System.out.println();

}

}

}

11、随机产生一个从0-100之间的整数,判断是否是质数

质数又称素数,是指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数 。

package demo;

import java.util.Random;

public class primeNum {

public static void main(String[] args) {

int num;

Random random = new Random();

num = random.nextInt(100);

System.out.println(“随机产生的数为:” + num);

System.out.println(isPrime(num));

}

public static boolean isPrime(int num) {

if(num < 2) {

return false;

}

if(num == 2) {

return true;

}

if(num % 2 == 0) {

return false;

}

for(int i = 3; i <= Math.sqrt(num); i += 2) {

if(num % i == 0) {

return false;

}

}

return true;

}

}

12、查找数组最小值,并将数组扩容成新数组

package demo;

import java.util.Arrays;

import java.util.Random;

/*

* author:wendy

* 问题:随机产生10个从0-100之间的整数,并查找最小值;

* 将该数组扩容成新数组,把最小值存在新数组的第一个位置。

* 步骤:

* 1.构造一个长度为10的数组,利用Random随机产生10个0-100之间的整数;

* 2.寻找最小值,利用for循环

* 3.扩容 利用Arrays.coprOf()构造新数组,将其长度设置为11

* 4.遍历新数组,从后往前遍历,以此赋值,然后将2中找到的最小值存在数组的第一个

* */

public class copyOf {

public static void main(String[] args) {

int [] arr = new int[10];

//随机产生10个 0-100之间的整数

Random random = new Random();

for(int i = 0; i < 10; i ++) {

arr[i] = random.nextInt(100);

}

//打印数组的内容

System.out.println(“随机产生的数组为:” + Arrays.toString(arr));

//查找最小的值

int min = arr[0];

for(int j = 1; j < 10; j ++) {

if(min > arr[j]) {

min = arr[j];

}

}

System.out.println(“该数组最小的值为:” + min);

//扩容,将最小值存在扩容之后的第一个

int [] newArr = Arrays.copyOf(arr, 11);

//从后往前遍历,将前面的值赋给后面的值,然后将第一个的值赋为最小值min

for(int k = newArr.length-1; k >=1; k –) {

newArr[k] = newArr[k-1];

}

//将第一个的值赋为最小值min

newArr[0] = min;

//打印数组的内容

System.out.println(“扩容之后的数组为:”+ Arrays.toString(newArr));

}

}

然后今天就讲到这里啦,大家记得点赞收藏,关注小姐姐哦!

文章内容转载自:https://blog.csdn.net/u010297791/article/details/77367589,如有涉及侵权请联系作者删除。

END

加下面这个双鱼小姐姐微信

领取上课地址更多JAVA开发资料返回搜狐,查看更多

责任编辑:

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/156313.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月7日 下午2:00
下一篇 2022年7月7日 下午2:00


相关推荐

  • 记忆化搜索简介「建议收藏」

    记忆化搜索简介「建议收藏」记忆化搜索:算法上依然是搜索的流程,但是搜索到的一些解用动态规划的那种思想和模式作一些保存。一般说来,动态规划总要遍历所有的状态,而搜索可以排除一些无效状态。更重要的是搜索还可以剪枝,可能剪去大量不必要的状态,因此在空间开销上往往比动态规划要低很多。记忆化算法在求解的时候还是按着自顶向下的顺序,但是每求解一个状态,就将它的解保存下来,以后再次遇到这个状态的时候,就不必重新求解了。

    2022年7月26日
    9
  • JMeter入门教程详解

    JMeter入门教程详解简介本文由 xmeter 君写给想了解性能测试和 JMeter 的小白 适合对这两者了解很少的同学们 如果已经有使用经验的请绕道 别浪费时间 我们将介绍 JMeter 的使用场景 如何安装 运行 JMeter 以及开始一个最最简单的测试 你还徘徊在 JMeter 的门口吗 别犹豫了 跟着本文做完 你就可以开启你的 JMeter 之旅了 JMeter 是开源软件 Apache 基金会下的一个性能测试工具 用来测试部署在服务器端的应用程序的性能 近来 JMeter 因为其使用简单 现在也被社区作为接口测试工具 啥 什么是性能测

    2026年3月20日
    2
  • 隐式转换函数_隐函数可以转化为显函数

    隐式转换函数_隐函数可以转化为显函数隐式转换函数是以implicit关键字声明的带有单个参数的函数。这种函数将会自动应用,将值从一种类型转换为另一种类型objectDemo1Main{defmain(args:Array[String]):Unit={valnum:Int=f1(3.5);valnum1:Int=3.5;print(num)}implic…

    2022年8月31日
    4
  • iPhone13怎么插卡?详细步骤图文教程

    iPhone13怎么插卡?详细步骤图文教程

    2026年3月12日
    3
  • 云服务器搭建java服务器运行环境

    云服务器搭建java服务器运行环境文章目录安装jdk解压jdk配置环境变量安装tomcattomcat开机自启安装MySQL安装MySQL开机启动启动mysql服务配置mysql如果运行上面的命令中途发生错误:`ERROR1558(HY000):Columncountofmysql.useriswrong.Expected43,found39.`进入mysql安装jdk先下载jdklinux版本,点…

    2022年5月4日
    87
  • Flutter jsonEncode 和 jsonDecode「建议收藏」

    Flutter jsonEncode 和 jsonDecode「建议收藏」json_decode()—-json转对象/数组通常网路请求后的数据用此方法转为我们需要的定义的对象当第二个参数为true返回array,默认是false返回object。json_encode()—-对象/数组转json成功返回json编码的string,失败返回false。…

    2022年7月17日
    87

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号