Java练习——输入n个数,存入数组,进行排序输出
题目:输入n个数,存入数组,进行排序输出
package paixu;
import java.util.Scanner;
public class paixu {public static void main(String[] args){int z;System.out.println("请输入n个需要排序的数:(请以 ,隔开)");Scanner input=new Scanner(System.in);String a=input.nextLine();//将所有数字以字符串的形式输入,字符串可以自动转为字符数组(见课本)String [] p=a.split(",");//split()函数 要求前后类型匹配,(分割完不一定说就是字符) //这个分割符严格区分中英文//这里数组直接元素,进行数组初始化int []shu=new int[p.length];//创建数组 语法:类型名[] 数组名=new 类型名[长度]//强调:Java中要求在声明数组的方括号内不允许指定数组长度for(int i=0;i<p.length;i++){shu[i]=Integer.parseInt(p[i]);//将字符串型强制转为其他类型 语法:类型名.parse类型名(变量名);//这里将字符串型强制转换为int类型}System.out.println("原序列为:");for(int i=0;i<shu.length;i++){System.out.printf("%4d",shu[i]);}System.out.printf("\n");for(int i=1;i<=shu.length;i++)//记录排序次数,总计{for(int j=0;j<shu.length-1;j++)//从头到尾每两个数进行比较,然后交换,为防止数组越界,将j-1与j进行比较{//或者如目前代码所示,不能超过length-1,因为数组下标最大为length-1;if(shu[j]>shu[j+1]){z=shu[j+1];shu[j+1]=shu[j];shu[j]=z;}}}System.out.println("排序后序列为:");for(int i=0;i<shu.length;i++){System.out.printf("%4d",shu[i]);}}
}
重难点:
(1)Java中数组创建:
创建数组有3种方法:
一、声明并赋值
语法:类型名[] 数组名={…};
二、先声明在创建
语法:类型名[] 数组名;
数组名=new 类型名[长度];
三、声明的时候同时创建
语法:
类型名[] 数组名=new 类型名[长度];
类型名 数组名[]=new 类型名[长度];
注意:
1、创建多维数组时,new后面的第一个方括号中的元素数量总不能省略(数组长度不能省略)
2、“new 数据类型[]{}”创建数组时,其中花括号可以省去,但要在“[ ]”中填写数组的个数
3、数组在声明时不能被赋值
4、Java中要求在声明数组的方括号内不允许指定数组长度
(2)在执行排序遍历时,一定要注意下标越界的问题,数组下标最大值为:length-1
(3)字符串型转换为其他类型:
语法:类型名.parse类型名(变量名);
例:string str=“12345”;
int a=Integer.parseInt(str);
转换为整型
float b=Float.parseFloat(变量名);
转换为float型
Java练习——输入n个数,存入数组,进行排序输出相关推荐
- java中如何在键盘中输入一串以逗号隔开数字然后存入数组中,并输出。
/***项目:java中如何在键盘中输入一串以逗号隔开数字然后存入数组中,并输出.*时间:2019/8/16*作者:郑翰林*/ import java.util.Scanner; public cla ...
- java输入字符数组_JAVA中怎样把用户输入的字符串存入数组中?
展开全部 import java.util.Scanner; import java.util.InputMismatchException; public class saveInputToArr ...
- ACMNO.20 C语言-插入队列 已有一个已排好的9个元素的数组,今输入一个数要求按原来排序的规律将它插入数组中。 输入 第一行,原始数列。 第二行,需要插入的数字。
题目描述 已有一个已排好的9个元素的数组,今输入一个数要求按原来排序的规律将它插入数组中. 输入 第一行,原始数列. 第二行,需要插入的数字. 输出 排序后的数列 样例输入 1 7 8 17 23 2 ...
- java switch语句练习 从键盘输入2个数和一个运算符(+,-,*,/),输出运算结果
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...
- C语言学习之有一个已排好序的数组,要求输入一个数后,按原来排序的规律将它插入数组中
有一个已排好序的数组,要求输入一个数后,按原来排序的规律将它插入数组中 #include <stdio.h> void main(){int a[11]={25,32,65,74,84,9 ...
- 已有一个已排好的9个元素的数组,今输入一个数要求按原来排序的规律将它插入数组中。
题目描述 已有一个已排好的9个元素的数组,今输入一个数要求按原来排序的规律将它插入数组中. 输入 第一行,原始数列. 第二行,需要插入的数字. 输出 排序后的数列 样例输入 1 7 8 17 23 2 ...
- 4.19 C语言练习(已有一个已正序排好的9个元素的数组,今输入一个数要求按原来排序的规律将它插入数组中)
[练习] 题目要求:已有一个已正序排好的9个元素的数组,今输入一个数要求按原来排序的规律将它插入数组中. 输入:第一行,原始数列. 第二行,需要插入的数字. 输出:排序后的数列例如:输入:1 7 8 ...
- java三个数排序从小到大,键盘输入三个数,实现从小到大排序,键盘输入从小到大...
键盘输入三个数,实现从小到大排序,键盘输入从小到大 // 导包 import java.util.Scanner; public class Sort { public static void mai ...
- (C++)输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。要求用3个函数实现,分别为输入10个数、进行处理、输出10个数。要求使用指针的方法进行处理。
#include<cstdio> //输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换.要求用3个函数实现,分别为输入10个数.进行处理.输出10个数.要求使用指针 ...
- ACMNO.37 C语言-数字交换 输入10个整数,将其中最小的数与第一个数对换,然后把最大的数与最后一个数对换。写三个函数; ①输入10个数;②进行处理;③输出10个数。
题目描述 输入10个整数,将其中最小的数与第一个数对换,然后把最大的数与最后一个数对换. 写三个函数: ①输入10个数:②进行处理:③输出10个数. 输入 10个整数 输出 整理后的十个数,每个数后跟 ...
最新文章
- 【Live555】live555源码详解(九):ServerMediaSession、ServerMediaSubsession、live555MediaServer
- MongoDB 基本操作增删改查
- [Spring5]IOC容器_Bean管理XML方式_创建对象_set注入属性and有参构造注入属性
- 关于Servlet和异步Servlet
- ICLR最高分论文揭秘模型泛化,GNN是潜力股
- PostgreSQL SSL启用与CA证书生成、配置
- react更改路由入参_react路由传参方式
- html界面选择按钮没法取消,如何使用JavaScript取消选择按钮
- Oracle数据库块的物理损坏与逻辑损坏
- vim 树形目录插件NERDTree安装
- AS3开发必须掌握的内容
- appdata文件太大了可以删除吗?
- c语言中while循环语句的作用,while和do while循环,C语言while和do while循环详解
- 编程速记(2):Pytorch篇-Tenor与numpy的互相转换
- I8700手机使用感受
- 企业邮件服务器哪个好?常用邮箱客户端是哪个?
- 20221118-数学函数图像在线工具推荐
- yamaha php mt8评测,诶哟这个盒子不错哟,NUC 8i5BEK简单开箱+评测(更新完毕)
- ASP.NST 运行原理
- [译][并行计算] 1. 并行计算简介