码迷,mamicode.com
首页 > 其他好文 > 详细

【笔试】15、输入三个整数x,y,z,请把这三个数由小到大输出。

时间:2015-08-10 20:03:16      阅读:138      评论:0      收藏:0      [点我收藏+]

标签:java

/**
 * 题目:输入三个整数x,y,z,请把这三个数由小到大输出。   
 * 时间:2015年7月29日11:01:06
 * 文件:Lianxi15.java
 * 作者:cutter_point
 */
package bishi.zuixin50.t2015729;

import java.io.*;

public class Lianxi15 
{
	public static void main(String [] args)
	{
		String inpath = "source/zuixin50/lianxi015input.txt";
		String outpath = "source/zuixin50/lianxi015output.txt";
		paiXu(inpath, outpath);
	}

	public static void maoPaoMin(int data[])
	{
		for(int i = 0; i < data.length; ++i)
		{//遍历所有的数据
			for(int j = i + 1; j < data.length; ++j)
			{//从我们的下一个元素开始比较,前面的数据都是小于这个数的
				if(data[i] > data[j])
				{
					//如果前面的数据比后面的大,那么就交换位置
					int temp = data[i];
					data[i] = data[j];
					data[j] = temp;
				}
			}
		}
	}

	public static void paiXu(String inPath, String outPath)
	{
		//文件读取
		FileInputStream fis = null;
		BufferedReader br = null;
		//文件输出
		FileOutputStream fos = null;
		
		try
		{
			fis = new FileInputStream(new File(inPath));
			br = new BufferedReader(new InputStreamReader(fis, "gbk"));
			fos = new FileOutputStream(new File(outPath));
			//我们一行一行地读取,然后一行一行地输出
			String line;
			String lines[];
			while((line = br.readLine()) != null)
			{
				//我们把读取到的数据放到一个数组中
				lines = line.split("\t");
				//每行排序输出,我们先把所有的数据转化为int类型存放到数组中
				int data[] = new int[lines.length];
				for(int i = 0; i < lines.length; ++i)
				{
					//转化
					data[i] = Integer.parseInt(lines[i]);
				}

				//然后我们采用冒泡排序
				maoPaoMin(data);
				//吧排号的数据输出到文件
				for(int i = 0; i < data.length; ++i)
				{
					//循环输出到文件
					System.out.print(data[i] + "\t");
					fos.write((""+data[i]).getBytes());
					fos.write("\t".getBytes());
				}
				//换行
				System.out.println("\n");
				fos.write("\n".getBytes());
			}/*while((line = br.readLine()) != null)*/
		}
		catch (Exception e)
		{
			System.out.println("读取失败!!");
		}
		finally
		{
			try
			{
				fos.close();
				br.close();
				fis.close();
			}
			catch (Exception e)
			{
				System.out.println("关闭失败!!");
			}
		}
	}
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

【笔试】15、输入三个整数x,y,z,请把这三个数由小到大输出。

标签:java

原文地址:http://blog.csdn.net/cutter_point/article/details/47403541

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!