文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

java基础编程案例

2023-10-11 13:34

关注

java编程案例

案例一:飞机票查看优惠系统

项目需求:

代码实现:

package anli;import java.util.Scanner;public class planone {    public static void main(String[] args) {        Scanner sc = new Scanner(System.in);        System.out.println("请您输入机票原价:");        int price = sc.nextInt();        System.out.println("请您输入仓位类型(头等舱/经济舱):");        String plantypes = sc.next();        System.out.println("请您输入月份(1-12):");        int month = sc.nextInt();        System.out.println("优惠后的价格为:"+Preferential(price,plantypes,month));    }    public static double Preferential(int price,String plantypes,int month){        if(month >= 5 && month <= 10){            switch (plantypes){                case "头等舱":                    price *= 0.9;                    break;                case "经济舱":                    price *= 0.85;                    break;                default:                    System.out.println("对不起,您输入的仓位有误~~~");                    price = -1;            }        }else if(month == 11 || month == 12 || month >= 1 && month <= 4){            switch (plantypes) {                case "头等舱":                    price *= 0.7;                    break;                case "经济舱":                    price *= 0.65;                    break;                default:                    System.out.println("对不起,您输入的仓位有误~~~");                    price = -1;            }        }else {            System.out.println("对不起,您输入的月份有误~~~");            price = -1;        }        return price;    }}

在这里插入图片描述

案例二:获取素数

项目需求:判断101-200之间有多少个素数,并输出所有数据。
代码实现:

package anli;public class sushu {    public static void main(String[] args) {        int sum = 0;        for (int i = 101; i <= 200; i++) {            boolean flag = true;            for (int j = 2; j < i / 2; j++){                if(i % j == 0){                    flag = false;                    break;                }            }            if(flag){                sum++;                System.out.print(i+"\t");            }        }        System.out.println("共有"+sum+"个质数。");    }}

案例三:验证码模块

项目需求:定义方法实现随机产生一个5位的验证码,每位可能是数字、大写字母、小写字母。
代码实现 :

package anli;import java.util.Random;import java.util.Scanner;public class yanzhengma {    public static void main(String[] args) {        Scanner sc = new Scanner(System.in);        System.out.println("请您输入验证码的位数:");        int sum = sc.nextInt();        System.out.println("生成的验证码为:"+createCode(sum));    }    public static String createCode(int n){        String code = "";        Random r = new Random();        for (int i = 0; i < n; i++) {            int type = r.nextInt(3);            switch (type){                case 0:                    char chA = (char)(r.nextInt(26) + 65);                    code += chA;                    break;                case 1:                    char cha = (char)(r.nextInt(26) + 97);                    code += cha;                    break;                case 2:                    code += r.nextInt(10);                    break;            }        }        return code;    }}

在这里插入图片描述

案例四:数组元素的复制

项目需求:把一个数组中的元素复制到另一个新数组中去。
代码实现:

package anli;public class suzufuzhi {    public static void main(String[] args) {        int[] arr = {11,22,33,44,55,66,77,88,99};        int[] arr1 = new int[arr.length];        list(arr,arr1);        System.out.println("原始数组为:");        printarr(arr);        System.out.println("复制的数组为:");        printarr(arr1);    }    public static void list(int[] arr,int[] arr1){        for (int i = 0; i < arr.length; i++) {            arr1[i] = arr[i];        }    }    public static void printarr(int[] arr){        System.out.print("[");        for (int i = 0; i < arr.length; i++) {            System.out.print(i == arr.length-1 ? arr[i] : arr[i]+", ");        }        System.out.println("]");    }}

在这里插入图片描述

案例五:评委打分

项目需求:在唱歌比赛中,有6名评委给选手打分,分数范围是[0 - 100]之间的整数。选手的最后得分为:去掉最高分、最低分后的4个评委的平均分,请完成上述过程并计算出选手的得分。
代码实现:

package anli;import java.util.Scanner;public class pingweidafen {    public static void main(String[] args) {        int[] scores = new int[6];        System.out.println("选手的最终得分为:"+ scos(scores));    }    public static float scos(int[] scores){        int min = scores[0],max = scores[0],sum = 0;        Scanner sc = new Scanner(System.in);        for (int i = 0; i < scores.length; i++) {            System.out.println("请您输入第"+(i+1)+"位评委的打分:");            int score = sc.nextInt();            scores[i] = score;        }        for (int i = 0; i < scores.length; i++) {            if(scores[i]>max){                max = scores[i];            }            if(scores[i]<min){                min = scores[i];            }            sum+=scores[i];        }        sum = (sum-min-max)/(scores.length-2);        return sum;    }}

在这里插入图片描述

案例六:数字加密程序

项目需求:某系统的数字密码:比如193,采用加密方式进行传输,规则如下:先得到每位数,然后每位数都加上5,在对10求余,最后将所有数字反转,得到一串新数。
代码实现:

package anli;import java.util.Scanner;public class mimajiami {    public static void main(String[] args) {        Scanner sc = new Scanner(System.in);        System.out.println("请输入需要加密的数字的位数:");        int length = sc.nextInt();        int [] arr = new int[length];        addarr(arr);        System.out.println("加密的数字为:");        printarr(arr);        jiamiarr(arr);        System.out.println("加密后的数字为:");        printarr(arr);    }    public static void addarr(int[] arr){        Scanner sc = new Scanner(System.in);        for (int i = 0; i < arr.length; i++) {            System.out.println("请您输入加密的第"+(i+1)+"位数字");            int number = sc.nextInt();            arr[i] = number;        }    }    public static void jiamiarr(int[] arr){        for (int i = 0; i < arr.length; i++) {            arr[i] = (arr[i] + 5) % 10;        }        for (int i = 0,j = arr.length-1; i < j; i++,j--) {            int temp = arr[j];            arr[j] = arr[i];            arr[i] = temp;        }    }    public static void printarr(int[] arr){        for (int i = 0; i < arr.length; i++) {            System.out.print(i == arr.length-1 ? arr[i]+"\n" : arr[i]);        }    }}

在这里插入图片描述

案例七:模拟双色球系统

项目需求:投注号码由6个红色球号码和一个蓝色球号码组成,红色球号码从1-33中选择;蓝色球号码从1-16中选择。
代码实现:

package anli;import java.util.Random;import java.util.Scanner;public class suangseqiu {    public static void main(String[] args) {        int[] lucknbr = cratenb();        int[] usernbr = usernubr();        judge(lucknbr,usernbr);    }    public static void judge(int[] lucknbr,int[] usernubr){        int redHitNub = 0;        int blueHiMbr = 0;        for (int i = 0; i < usernubr.length - 1; i++) {            for (int j = 0; j < lucknbr.length - 1; j++) {                if(usernubr[i] == lucknbr[j]){                    redHitNub ++;                    break;                }            }        }        blueHiMbr = lucknbr[6] == usernubr[6] ? 1:0;        System.out.println("中奖号码是:");        printArray(lucknbr);        System.out.println("您投注号码是:");        printArray(usernubr);        System.out.println("您命中了"+redHitNub+"个红球");        System.out.println("您"+(blueHiMbr == 1 ? "命中了":"没有命中")+"蓝球");        if(blueHiMbr == 1 && redHitNub < 3){            System.out.println("恭喜您,中了5元奖!");        }else if(blueHiMbr == 1 && redHitNub == 3 || blueHiMbr == 0 && redHitNub == 4){            System.out.println("恭喜您,中了10元奖!");        }else if(blueHiMbr == 1 && redHitNub == 4 || blueHiMbr == 0 && redHitNub == 5){            System.out.println("恭喜您,中了200元奖!");        }else if(blueHiMbr == 1 && redHitNub == 5){            System.out.println("恭喜您,中了300元奖!");        }else if(blueHiMbr == 0 && redHitNub == 6){            System.out.println("恭喜您,中了500万元奖!");        }else if(blueHiMbr == 1 && redHitNub == 6){            System.out.println("恭喜您,中了1000万元奖!");        }else {            System.out.println("感谢你为福利事业做出贡献!");        }    }    public static void printArray(int[] arr){        for (int i = 0; i < arr.length; i++) {            System.out.print(arr[i]+"\t");        }        System.out.println();    }    public static int[] usernubr(){        int[] nubers = new int[7];        Scanner sc = new Scanner(System.in);        for (int i = 0; i < nubers.length-1; i++) {            System.out.println("请您输入第" + (i+1) +"个红球号码(1-33,要求不重复):");            int date = sc.nextInt();            nubers[i] = date;        }        System.out.println("请您输入篮球号码(1-16):");        nubers[6] = sc.nextInt();        return nubers;    }    public static int[] cratenb(){        int[] numb = new int[7];        Random r = new Random();        for (int i = 0; i < numb.length - 1; i++) {            while (true) {                int data = r.nextInt(33) + 1;                boolean flag = true;                for(int j = 0; j < i; j++){                    if(numb[j] == data){                        flag = true;                        break;                    }                }                if(flag){                    numb[i] = data;                    break;                }            }        }        numb[numb.length - 1] = r.nextInt(16) + 1;        return numb;    }}

在这里插入图片描述

来源地址:https://blog.csdn.net/asnowdream/article/details/127235002

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯