1:请创建一个长度为6的整数数组,并为数组中的元素赋值。遍历数组,打印所有元素,元素之间用空格隔开。
int []arr = new int []{1,2,3,4,5,6};;
for(int i=0;i<arr.length;i++){
System.out.print(arr[i]+" ");
}
2:现有一个小数数组{12.9, 53.54, 75.0, 99.1, 3.14}。请编写代码,找出数组中的最小值并打印。
double[] arr = new double[]{12.9, 53.54, 75.0, 99.1, 3.14};
double max = 0;
int min=arr.length-1;
for (int i = 0; i < arr.length - 1; i++) {
if (arr[i + 1] > arr[i]) {
max = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = max;
}
}
for(int j=0;j<arr.length;j++){
System.out.print(arr[j]+ " ");
}
System.out.println("\n"+"数组中最小值是"+arr[min]+ " ");
3:创建一个长度为6的整数数组。请编写代码,随机生成六个0(包含)-100(不包含)之间的整数存放到数组中,然后计算出数组中所有元素的和并打印。
import java.util.Random;//引用Random包
public class factorial {
public static void main(String[] ages) {
Random r=new Random();//创建对象
//创建sum获取和
int sum=0;
//创建数组,长度为6
int []arr=new int[6];
//用for循环遍历整个数组
for (int i = 0; i < arr.length; i++) {
int ran=r.nextInt(100);//将0-99随机赋值给ran
arr[i]=ran;//将随机数赋值进入数组
sum+=arr[i];//将所有数组元素相加
System.out.print(arr[i]+ " ");
}
//换行输出和
System.out.println("\n"+sum);
}
}
4:现有一个整数数组,数组中的每个元素都是[0-9]之间的数字,从数组的最大索引位置开始到最小索引位置,依次表示整数的个位、十位、百位。。。依次类推。请编写程序计算,这个数组所表示的整数值。例如:
import java.util.Random;
public class factorial {
public static void main(String[] ages) {
int[] arr = new int[5];
int sum = 0;//接受最后得到的整数
Random r = new Random();
//将随机数0-9赋值给数组
for (int i = 0; i < arr.length; i++) {
int ran = r.nextInt(10);
arr[i] = ran;
//将数组每个元素变成整数的一部分,由0位变成整数的最大为,arr.length位变成个位
sum = sum * 10 + ran;
}
System.out.println("\n" + sum);
}
}
5:定义一个数组来存储10个学生的成绩,例如:{72, 89, 65, 87, 91, 82, 71, 93, 76, 68}。计算并输出学生的平均成绩
import java.util.Random;
public class factorial {
public static void main(String[] ages) {
Random r = new Random();
int x = 1;//作为计数器
int sum=0;//作为和以便计算平均数
int[] arr = new int[10];//定义数组存储10个学生的数据
for (int i = 0; i < arr.length; i++) {
int ran = r.nextInt(100) + 1;
arr [i] =ran;
sum+=ran;
x++;
}
System.out.println("10个学生平均数是"+sum/x);
}
}
6:(很难)有一个数组,其中有十个元素从小到大依次排列 {12,14,23,45,66,68,70,77,90,91}。再通过键盘录入一个整数数字。要求:把数字放入数组序列中,生成一个新的数组,并且数组的元素依旧是从小到大排列的。执行效果如下:
请输入一个整数数字:
50
生成的新数组是:12 14 23 45 50 66 68 70 77 90 91
import java.util.Scanner;
public class factorial {
public static void main(String[] ages) {
Scanner sc = new Scanner(System.in);
int[] arr = new int[]{12, 14, 23, 45, 66, 68, 70, 90, 91};//定义数组
int[] brr = new int[arr.length + 1];
System.out.println("请输入一个整数");
int num = sc.nextInt();
//利用循环来对数组数字进行比较,用“i”表示索引位置
int i = 0;
//因为&&判断第一个为false时就会输出整体会false,所以必须把(i<arr.length)放在前边
//如果不加(i<arr.length)限制那么当输入的数值大于arr【】数组里的所有数值时就会报错,因为arr【9】不存在
//用while循环获取比num小的数组的数值放进brr[]里面
while ((i < arr.length) && (num > arr[i])) {
brr[i] = arr[i];
i++;
}
//brr[i] = num当sum<i时,让num放置在i上,然后将brr数组数字后移一位,将arr数值打印在sum后面
for (brr[i] = num; i < arr.length; i++) {
brr[i + 1] = arr[i];
}
//遍历brr数组输出brr数组
for (int n = 0; n < brr.length; n++) {
System.out.print(brr[n] + " ");
}
}
}
7:(很难)定义一个数组其中包含多个数字。用自己的方式最终实现,奇数放在数组的左边,偶数放在数组的右边。(可以创建其他数组,不必须在原数组中改变)
import java.util.Random;
public class factorial {
public static void main(String[] ages) {
Random r = new Random();
int[] arr = new int[6];
int[] brr = new int[arr.length];
for (int i = 0; i < arr.length; i++) {
int ran = r.nextInt(99) + 1;//1-99取随机数
arr[i] = ran;
}
int j = 0;//定义数组brr的标识位
//循环找出奇数放入brr数组
for (int i = 0; i < arr.length; i++) {
if (arr[i] % 2 != 0) {
brr[j] = arr[i];
j++;
}
}
//循环找出偶数放入brr数组
for (int i = 0; i < arr.length; i++) {
if (arr[i] % 2 == 0) {
brr[j] = arr[i];
j++;
}
}
//循环打印数组
for (int i = 0; i < brr.length; i++) {
System.out.print(brr[i] + " ");
}
}
}