黑马程序员技术交流社区
标题:
基础题
[打印本页]
作者:
杨立考
时间:
2012-9-23 15:52
标题:
基础题
从键盘输入得个100以内的数,求出这三个数中最大值,最小值
作者:
宁振庄
时间:
2012-9-23 16:17
写得不严谨,没有判断输入是不是整数,就提供个大体代码给你。不过基础题不应该自己解决的么?
import java.io.*;
import java.util.Arrays;
public class Test {
public static void main(String[] args) {
System.out.println("请输入N个整数,以空格隔开");
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = "";
try {
if((str=br.readLine())!=null){
String []str1 = str.split(" ");
int []arr = new int[str1.length];
for(int i=0;i<str1.length;i++){
arr[i] = Integer.parseInt(str1[i]);
}
Arrays.sort(arr);
System.out.println("最小值为" + arr[0]);
System.out.println("最大值为" + arr[arr.length-1]);
br.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
复制代码
作者:
王贵朝
时间:
2012-9-23 16:19
System.out.println("最小值为" + arr[0]);
System.out.println("最大值为" + arr[arr.length-1]);
我觉得这句话是程序中的亮点!!
作者:
赵永康
时间:
2012-9-23 16:25
个人思路:比较麻烦,肯定有简单的!望指正
键盘录入-------集合中-------集合变成数组-----在操作数组得到你想要的元素
涉及到的方法:集合的toArray() Arrays.sort()方法等 当然还有标准的键盘录入:
BufferedReader bufr=new BufferedReader(new InputStreamReader(System.in());
纯属个人思路,没验证能不能实现,请各位还有好的方法,可以分享
作者:
张忠豹
时间:
2012-9-23 19:59
package com.itheima.second;
import java.util.Scanner;
public class ScannerDemo {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String num = sc.nextLine();
//在此假设是以空格分隔的三个数字
String[] arr = num.split(" ");
int max = getMax(arr);
int min = getMin(arr);
System.out.println("最大数是:max="+max+",最下的数是:min="+min);
}
//求最大数
public static int getMax(String[] arr)
{
int max = 0;//初始化为数组中的任意一个角标。
for(int x=1; x<arr.length; x++)
{
if(Integer.parseInt(arr[x])>Integer.parseInt(arr[max]))
{
max = x;
}
}
return Integer.parseInt(arr[max]);
}
//求最小数
private static int getMin(String[] num) {
int min = 0;
for(int x=1; x<num.length; x++)
{
if(Integer.parseInt(num[min])>Integer.parseInt(num[x]))
{
min = x;
}
}
return Integer.parseInt(num[min]);
}
}
小例子,希望对楼主有帮助
作者:
张小龙
时间:
2012-9-23 20:25
二楼没说中,
一楼最大的亮点在于 Arrays.sort(arr);
给楼主一个原生态的:
public class Arrays {
public static void main(String[] args){
Scanner scanner =new Scanner(System.in);
int[] arrays=new int[3];
for(int x=0;x<3;x++){
//循环接收用户输入的数字
arrays[x]=scanner.nextInt();}
int temp;
for(int x=0;x<3;x++){
//冒泡排序 大家都很清楚吧
for(int y=0;y<arrays.length-x-1;y++){
if(arrays[y]>arrays[y+1]){
temp=arrays[y];
arrays[y]=arrays[y+1];
arrays[y+1]=temp;}}}
for(int x=0;x<arrays.length;x++){
//最后输出
System.out.print(arrays[x]+" ");}}}
楼主加油哦,这个必须自己慢慢学的,基础要打牢才行
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2