数组练习(随机点名器)
编写一个随机点名的程序,使其能够在全班同学中随机点中某一位同学的名字。点名器具备三个功能,储存全班同学姓名、总览全班同学姓名和随机点取其中一人姓名。
总体来说,难度不是很大,实现三个功能,分别将三个功能封装到不同的方法之中,之后在main()方法中进行调用。
addstudent()方法用来添加学生。
printstudent()方法用来打印总览学生。
String name = randomstudent()方法用来实现随机点名。
import java.util.Random;
import java.util.Scanner;
public class callName {
public static void main(String[] args) {
System.out.println("------------随机点名器------------");
String[] student = new String[10];
Scanner sc = new Scanner(System.in);
System.out.println("您的学生数量为:");
int i = sc.nextInt();
boolean flag = true;
System.out.println();
while(flag){
System.out.println("请选择序号来进行下一步操作:");
System.out.println("================================");
System.out.println(" (1)添加学生");
System.out.println(" (2)浏览学生");
System.out.println(" (3)随机点名");
System.out.println(" (4)退 出");
int n = sc.nextInt();
switch (n){
case 1:{
addstudent(student,i);
System.out.println();
break;
}
case 2:{
printstudent(student,i);
System.out.println();
break;
}
case 3:{
String name = randomstudent(student,i);
System.out.println(" 被点到名字的同学是:"+name);
break;
}
case 4:{
flag = false;
break;
}
default:{
System.out.println(" 输入错误,请重新输入!");
System.out.println();
break;
}
}
}
}
public static void addstudent(String[] stu,int i){//添加学生
Scanner sc = new Scanner(System.in);
int a = 0;
for (a = 0; a<i; a++ ){
System.out.println(" 储存第"+(a+1)+"个姓名:");
stu[a] = sc.next();
}
}
public static void printstudent(String[] stu,int i){//遍历打印数组中的数据
System.out.println("您的学生有:");
for (int a = 0; a<i; a++ ){
System.out.print(" "+ stu[a] +" ");
}
System.out.println();
}
public static String randomstudent(String[] stu,int i){//随机点名并打印
int a = new Random().nextInt(i);
System.out.println(" 第"+(a+1)+"个同学被点到了!");
String name = stu[a];
return name ;
}
}
测试:
------------随机点名器------------
您的学生数量为:
3
请选择序号来进行下一步操作:
================================
(1)添加学生
(2)浏览学生
(3)随机点名
(4)退 出
1
储存第1个姓名:
韦德
储存第2个姓名:
詹姆斯
储存第3个姓名:
科比
请选择序号来进行下一步操作:
================================
(1)添加学生
(2)浏览学生
(3)随机点名
(4)退 出
2
您的学生有:
韦德 詹姆斯 科比
请选择序号来进行下一步操作:
================================
(1)添加学生
(2)浏览学生
(3)随机点名
(4)退 出
3
第3个同学被点到了!
被点到名字的同学是:科比
请选择序号来进行下一步操作:
================================
(1)添加学生
(2)浏览学生
(3)随机点名
(4)退 出
3
第3个同学被点到了!
被点到名字的同学是:科比
请选择序号来进行下一步操作:
================================
(1)添加学生
(2)浏览学生
(3)随机点名
(4)退 出
3
第3个同学被点到了!
被点到名字的同学是:科比
请选择序号来进行下一步操作:
================================
(1)添加学生
(2)浏览学生
(3)随机点名
(4)退 出
3
第2个同学被点到了!
被点到名字的同学是:詹姆斯
请选择序号来进行下一步操作:
================================
(1)添加学生
(2)浏览学生
(3)随机点名
(4)退 出
3
第2个同学被点到了!
被点到名字的同学是:詹姆斯
请选择序号来进行下一步操作:
================================
(1)添加学生
(2)浏览学生
(3)随机点名
(4)退 出
3
第2个同学被点到了!
被点到名字的同学是:詹姆斯
请选择序号来进行下一步操作:
================================
(1)添加学生
(2)浏览学生
(3)随机点名
(4)退 出
3
第1个同学被点到了!
被点到名字的同学是:韦德
请选择序号来进行下一步操作:
================================
(1)添加学生
(2)浏览学生
(3)随机点名
(4)退 出
4
Process finished with exit code 0
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/153006.html