关于java的一道题目,求大神解

关于java的一道题目,编写程序,提示用户用户输入学生的个数,每个学生的名字及其分数,最后显示最高分和第二高分!目前只学习到循环,面向对象和数组都还没学习!!... 关于java的一道题目,编写 程序,提示用户用户输入学生的个数,每个学生的名字及其分数,最后显示最高分和第二高分!目前只学习到循环,面向对象和数组都还没学习!! 展开
 我来答
哎呀我是小柠檬
2015-08-18
知道答主
回答量:15
采纳率:0%
帮助的人:3.3万
展开全部

import java.util.*;

import java.util.*;

public class BestPoint {


/**

* 关于java的一道题目,编写 程序,提示用户用户输入学生的个数,

* 每个学生的名字及其分数,最后显示最高分和第二高分!目前只学习到循环,

* 面向对象和数组都还没学习!!

*/

public static void main(String[] args) {

System.out.print("输入学生的个数:");

Scanner scanner=new Scanner(System.in);

int count=scanner.nextInt();

String namebest=null;

int pointbest=0;

String namesecond=null;

int pointsecond=0;

int point=0;

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

System.out.println("请输入第"+i+"个学生的姓名");

String name=scanner.next();

System.out.println("请输入第"+i+"个学生的成绩");

point=scanner.nextInt();

if(point>pointsecond&&point>pointbest){

pointbest=point;

namebest=name;

}

else if(point>pointsecond&&point<pointbest){

pointsecond=point;

namesecond=name;

}

}

System.out.println("最高分的姓名是:"+namebest+" "+"最高分是"+pointbest);

System.out.println("第二高的姓名是:"+namesecond+" "+"第二高分是:"+pointsecond);

}

}

亦_池
2015-08-18
知道答主
回答量:3
采纳率:0%
帮助的人:3955
展开全部
import java.util.Scanner;

public class Demo {

public static void main(String[] args) {
String first = null;
String second = null;
int fristNum = 0;
int secondNum = 0;
Scanner scan = new Scanner(System.in);
for(int i=1;i<5;i++){
System.out.print("请输入第"+i+"人的姓名:");
second = scan.next();
System.out.println();
System.out.print("请输入第"+i+"人的分数:");
secondNum = Integer.parseInt(scan.next());
if(secondNum>fristNum){
int temp = 0;
String tempName= null;
temp= secondNum;
tempName = second;
second = first;
first = tempName;
secondNum = fristNum;
fristNum = temp;
}
System.out.println("--------------------------------");
}
System.out.println("第一名为:"+first+"\t"+"分数为:"+fristNum);
System.out.println("第二名为:"+second+"\t"+"分数为:"+secondNum);
}

}

没做异常处理
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帽子狗
2015-08-18 · TA获得超过942个赞
知道小有建树答主
回答量:611
采纳率:50%
帮助的人:547万
展开全部
循环就够用了
根据输入的数 来决定循环几次 每次输入一个字符串和整数
用两个变量 一个来存最大的 一个存第二大的
最后都不用显示那个字符串 直接输出这两变量就行
-----------------------------------------------------------------------
代码还是自己写的好 要是想应付老师 加到200分 自然有人写
追问
我只剩100个悬赏币了,帮我写啦大神,都给你了!
追答

我是渣 只不过学得比哥们你早点而已 ..

弄个伪代码吧 

数据可以这么处理 字符串就不写了 

int n=sc.nextInt();
if(n<2)
  //巴拉巴拉 输出n不能比2小啊 n至少大于2什么的;
int diyi=sc.nextInt();
int dier=sc.nextInt();//这么写至少要输入两个数
for(int i=2;i<n;++i)//前面输入了两个 所以从2开始
{
     int x=sc.nextInt();//每次读一个
     if(x>diyi)//要是比第一个大 那这次输入的x就是最大
       diyi=x;
     else if(x>dier)//没有第一个大 看看他是不是第二
       dier=x;
     //要是两个都不满足就不管了
}
//最后输出了 完事
//可能还要存储字符串 多两个变量和一个临时变量的事
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
毒舌讲电影
推荐于2016-05-22 · 超过10用户采纳过TA的回答
知道答主
回答量:62
采纳率:0%
帮助的人:17.9万
展开全部

import java.util.*;

public class Test{

public static void main(String[] args){

Scanner scanner = new Scanner(System.in);

System.out.println("输入人数");

int  n = scanner.nextInt();

int num,max1=0,max2=0;

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

System.out.println("输入成绩");

num = scanner.nextInt();

if(num>max1&&num>max2){

max1 = num;

}else if(num<max1&&num>max2){

max2 = num;

}

}

System.out.println("最大:"+max1+"第二大:"+max2);

}

}

追问

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
鲸鱼爸爸
2015-08-18 · TA获得超过472个赞
知道小有建树答主
回答量:614
采纳率:0%
帮助的人:423万
展开全部
用循环,够了~
追问
求源代码!!谢谢
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式