各位大神,求用java编写的代码,在线等,谢谢!

模拟选班长,一共有5位候选人,代号分别为1-5,要求用户循环从键盘输入支持的候选人代号,当输入正确代号时,对相应的候选人进行累加票数,当输入无效代号时,给用户显示相应的提... 模拟选班长,一共有 5 位候选人,代号分别为 1-5,要求用户循环从键盘输入支持的候
选人代号,当输入正确代号时,对相应的候选人进行累加票数,当输入无效代号时,给
用户显示相应的提示信息,并无条件的继续投票,当输入代号 0 时,选举结束,并显示
出所有候选人所得票数以及哪位候选人当选了班长,效果图如下:
请输入您支持的候选人代号[1-5]
1
请输入您支持的候选人代号[1-5]
2
请输入您支持的候选人代号[1-5]
3
请输入您支持的候选人代号[1-5]
4
请输入您支持的候选人代号[1-5]
1
请输入您支持的候选人代号[1-5]
2
请输入您支持的候选人代号[1-5]
2
请输入您支持的候选人代号[1-5]
6
您输入的候选人代号无效,请重新输入
请输入您支持的候选人代号[1-5]
0
选举结束
5 位候选人所得票数为下:
第 1 位候选人所得票数:2
第 2 位候选人所得票数:3
第 3 位候选人所得票数:1
第 4 位候选人所得票数:1
第 5 位候选人所得票数:0
最终当选班长的候选人是 2 号,恭喜!
展开
 我来答
buddhayes
2015-10-29 · 超过33用户采纳过TA的回答
知道答主
回答量:56
采纳率:100%
帮助的人:50.5万
展开全部
    public static void main(String[] args) throws UnsupportedEncodingException {
        Scanner in = new Scanner(System.in);

        int studentNum = 7;
        int result[] = { 0, 0, 0, 0, 0 };
        for (int i = 0; i < studentNum; i++) {
            System.out.println("请输入您支持的候选人代号[1-5]");
            int temp = in.nextInt();
            if (temp < 1 || temp > 5) {
                System.out.println("您输入的候选人代号无效,请重新输入");
            } else {
                result[temp - 1] += 1;
            }
        }
        
        System.out.println("选举结束");
        int maxNmu = 0;
        int maxCount = 0;
        for (int j = 0; j < result.length; j ++ ) {
            System.out.println("第 "+(j+1) +" 位候选人所得票数:" + result[j]);
            if (maxCount < result[j]) {
                maxNmu = j +1;
                maxCount = result[j];
            }
        }
        
        System.out.println("最终当选班长的候选人是 "+ maxNmu +" 号,恭喜!");
    }

   基本功能实现,还需自己完善。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2015-10-29
展开全部
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;


public class Classroom {

private final static int NUM = 5;

public static void main(String[] args) {
Map<String,Integer> map = new HashMap<String,Integer>();

for(int i = 1;i <= NUM; i++){
map.put(String.valueOf(i), 0);
}
Scanner scanner  = new Scanner(System.in);
int no = 0;

System.out.println("请输入您支持的候选人代号[1-5]");

no = scanner.nextInt();

while(no != 0){
if(no >= 1 && no <= NUM){
map.put(String.valueOf(no),map.get(String.valueOf(no)) + 1);
}else{
System.out.println("您输入的候选人代号无效,请重新输入");
}
System.out.println("请输入您支持的候选人代号[1-5]");
no = scanner.nextInt();
}
System.out.println("选举结束");
System.out.println(NUM+" 位候选人所得票数为下:");
int max = 0;
int index = 1;
for(int i = 1; i <= NUM ; i++){
int each = map.get(String.valueOf(i));
if(each > max){
max = each;
index = i;
}
System.out.println("第 "+i+" 位候选人所得票数:"+each);
}

System.out.println("最终当选班长的候选人是 "+index+" 号,恭喜!");

}

}

//测试结果
请输入您支持的候选人代号[1-5]
1
请输入您支持的候选人代号[1-5]
4
请输入您支持的候选人代号[1-5]
6
您输入的候选人代号无效,请重新输入
请输入您支持的候选人代号[1-5]
7
您输入的候选人代号无效,请重新输入
请输入您支持的候选人代号[1-5]
4
请输入您支持的候选人代号[1-5]
3
请输入您支持的候选人代号[1-5]
2
请输入您支持的候选人代号[1-5]
5
请输入您支持的候选人代号[1-5]
2
请输入您支持的候选人代号[1-5]
4
请输入您支持的候选人代号[1-5]
0
选举结束
5 位候选人所得票数为下:
第 1 位候选人所得票数:1
第 2 位候选人所得票数:2
第 3 位候选人所得票数:1
第 4 位候选人所得票数:3
第 5 位候选人所得票数:1
最终当选班长的候选人是 4 号,恭喜!


如果你认为还可以的话,请加分

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
afeilf1
2015-10-29 · 超过34用户采纳过TA的回答
知道答主
回答量:87
采纳率:0%
帮助的人:58.2万
展开全部
分太少了,能多给点分吗?我马上给你写。
追问
写吧,有你的高悬赏

这是咋回事啊?

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式