随机点名器,即在全班同学中随机的打印出一名同学名字。
要做的随机点名器,它具备以下3个内容:
 存储所有同学姓名
 总览全班同学姓名
 随机点名其中一人,打印到控制台
案例需求分析
在全班同学中随机的打印出一名同学名字。
我们对本案例进行分析,得出如下分析结果:
1.存储全班同学名字
2.打印全班同学每一个人的名字
3.在班级总人数范围内,随机产生一个随机数,查找该随机数所对应的同学名字
该案例须有以下3个内容:
 存储所有同学姓名
 总览全班同学姓名
 随机点名其中一人,打印到控`制台
随机点名器明确地分为了三个功能。如果将多个独立功能的代码写到一起,则代码相对冗长,我们可以针对不同的功能可以将其封装到一个方法中,将完整独立的功能分离出来。
而在存储同学姓名时,如果对每一个同学都定义一个变量进行姓名存储,则会出现过多孤立的变量,很难一次性将全部数据持有。此时,我们可以使用数组解决多个数据的存储问题。
功能不多 主要靠卷!!!

import java.util.*;
public class dmq {//总览学生姓名public static void findall(String[] ad){System.out.println("学生表");int c=0;for(int i=0;i<ad.length;i++){System.out.print(ad[i]+"\t");c++;if(c==4){c=0;System.out.println();}}}//随机点名函数public static void rashu(String[] ad){System.out.println("请输入要点到几个同学:");Scanner x = new Scanner(System.in);int c = x.nextInt();int c2 = 1;while(c>0){Random a = new Random();int c1 = a.nextInt(ad.length-1); //防止数组越界System.out.println("随机点到的第"+c2+"个同学为:"+ad[c1]);c2++;c--;}}// 增加学生姓名public static String[] add(){Scanner x = new Scanner(System.in);System.out.println("请输入要录入的学生个数:");int n = x.nextInt();String[] ag = new String[n];for(int i=0;i<ag.length;i++){System.out.println("请输入第"+(i+1)+"个学生的姓名:");ag[i] = x.next();}System.out.println("录入的学生人数");for(int i=0;i<ag.length;i++){System.out.print(ag[i]+"\t");}return ag;}
//排除请假学生姓名public static String[] del(String[] ad){System.out.println("请输入请假学生个数");Scanner x = new Scanner(System.in);int a3 = x.nextInt();int c3=1;while(a3>0){System.out.println("请输入请假的第"+(c3)+"个学生");c3++;String s1 = x.next();for(int i=0;i<ad.length;i++){if(s1.equals(ad[i])){ad[i]="";}}a3--;}return ad;}public static void  df3(String[] ad){     //录入后点名String[] ag =add();  //接受增加的学生人数String[] adg = new String[ad.length+ag.length];for(int i=0;i<ad.length;i++){adg[i] = ad[i];}for(int i=0;i<ag.length;i++){ // fdgffadg[i+ad.length] = ag[i];}System.out.println("\n输出新的学生表==================");findall(adg);System.out.println("\n重新开始点名====================");rashu(adg);}public static void dfCai(){      //菜单函数System.out.println("  \n随机点名器  ");System.out.println("1  总览学生姓名");System.out.println("2  开始随机点名");System.out.println("3  录入学生姓名");System.out.println("4  排除请假姓名");System.out.println("5  重新开始点名");System.out.println("0  退出点名器!");System.out.println("\n请选择操作!");}public static void main(String[] args) {Scanner x = new Scanner(System.in);String[] ad = {"陈奕扬", "侍世涛", "朱光宁", "安嘉成", "郭志豪", "路飞","高改霞", "丁茵", "胡凡林", "何丽梅", "刘瑾怡", "张丽","小豆","小花","田园","晓云","庐山","大豆","小蔡",};while (true){dfCai();int a = x.nextInt();int b = 0;switch (a){case 0:b=1;break;case 1:findall(ad);break;case 2:rashu(ad);break;case 5:System.out.println("1 直接点名");System.out.println("2 增加后点名");int ze = x.nextInt();if(ze==1){rashu(ad);break;}else{}case 3:df3(ad);break;case 4:String[] agh = del(ad);System.out.println("排除请假学生后开始点名!!");rashu(agh);break;}if(b==1){System.out.println("随机点名器退出!");break;}}}
}

Java 随机点名器相关推荐

  1. java 随机点名器和随机摇号器

    java实训20210810 java 随机点名器 和 随机摇号器 随机点名器,即在全班同学中随机的打印出一名同学名字. 要做的随机点名器,它具备以下3个内容:  存储所有同学姓名  总览全班同学 ...

  2. java随机点名器的思路_Java实现简单的随机点名器

    实现思路 1.在存储同学姓名时,如果每一个同学都定义一个变量进行姓名存储,则会出现过多孤立的变量,很难一次性将全部数据持有.此时可以使用数组解决多个数据的存储问题.创建一个可以存储多个同学姓名的数组, ...

  3. java随机点名器(仅供娱乐)

    任务描述: 编写一个随机点名的程序,使其能够在618宿舍中随机点中某一名小倒霉蛋儿的名字,去给室友们带饭,哈哈哈哈哈. 任务要求: 随机点名器需要包含三个功能: 1.存储宿舍同学的名字 2.总览618 ...

  4. java随机点名器_Java实现简单随机点名器

    2-3随机点名器 /*随机点名器 *1.储存所有同学的名字 *2.总览全班同学的姓名 *3.随机点取一人的姓名 */ package Chap2Gramma.chooseperson; import ...

  5. java随机点名器_随机点名器(Java实现、读取txt文件)

    标签: 用java编写一个简单的随机点名器(通过读取txt文件实现) 代码如下 package ThirdClass; import java.awt.BorderLayout; import jav ...

  6. java随机点名器的思路_JAVA基础 随机点名器案例

    1.1      案例介绍 随机点名器,即在全班同学中随机的找出一名同学,打印这名同学的个人信息. 此案例在我们昨天课程学习中,已经介绍,现在我们要做的是对原有的案例进行升级,使用新的技术来实现. 我 ...

  7. java 点名器_java随机点名器 课程设计.docx

    java随机点名器 课程设计 目 录1 课程设计内容11.1 课程设计目的11.2 课程设计要求11.3 课程设计背景12 概要设计22.1程序模块结构图22.2 使用外部包的确定22.3 主界面模块 ...

  8. 随机点名器——java

    随机点名器 任务描述: 编写一个随机点名的程序,随机点名器需具备3个基本功能: 1.存储所有人的姓名: 2.总览全部人的姓名: 3.随机点取一人姓名: 设计思路: 1.根据点名器功能的不同,将功能封装 ...

  9. 随机点名器1(Java数组基础)

    前言 这里我们运用一些基本的Java知识点来完成一个小小项目--随机点名器,(后续我们也会此不断升级,知识点的不断增加) 这里我们重点运用到的是:Java数组的基础运用 项目描述 编写一个随机点名的程 ...

最新文章

  1. 金融数据分析(四)-------矩,偏度,峰度
  2. 排球赛程序(个人作业)
  3. php 两次post,ajax跨域往php程序post数据时,php程序总是执行两次的解决办法
  4. Windows 7 应用程序崩溃恢复
  5. mysql什么级别数据库_Mysql的四种隔离级别是什么
  6. Web前端技术分享:什么是块元素?什么是行内元素?
  7. 打卡签到python代码_如何利用Python实现自动打卡签到
  8. 如何使用 Entity Framework 的 DbContext
  9. leetcode209. 长度最小的子数组(滑动窗口)
  10. 查询SQL中某表里有多少列包含某字段
  11. Linux抓包工具tcpdump命令详解
  12. linux系统上传下载命令rz和sz
  13. grep sed awk三剑客详解
  14. python apriori算法 sklearn_R 和 Python (numpy scipy pandas) 用于统计学分析,哪个更好?...
  15. java验证ie版本的正则表达式_JS 浏览器类型判断,IE版本类型判断,正则表达式判断。...
  16. 台式计算机的速度,USB3.0有多快?平民级最简单测试告诉你
  17. vector容器——赋值操作
  18. 10.3. TUI (Text User Interface)
  19. 贴片电阻、贴片电容规格、封装、尺寸·功率
  20. 苹果手机内存不够白屏

热门文章

  1. 用函数统计各分数段人数c语言,如何使用Excel函数统计各或分数段的人数(五种方法).doc...
  2. RPG Maker MV 打包安卓和修改分辨率的方法
  3. IPV6地址基础知识
  4. selenium下拉列表定位之 select+option 的定位
  5. 深算院入选“数字政府建设赋能计划”成员单位
  6. 安装Matlab时用mathwork账户登陆时显示连接错误
  7. 大功率双伺服电机驱动板,包含原理图,PCB和原代码,基于STM32F4方案,支持霍尔,编码器,无感
  8. APP+spring boot校园购物网站 毕业设计-附源码041037
  9. Win10资源管理器闪退解决办法
  10. 3D游戏编程与设计-游戏分类与热点探索