在基础班学习的过程中,老师每天都会有许多的案例题发下来给我们联系,我挑了一些对我来说比较有挑战性的题目 准备分享给大家 ,
小白们都可以试着去想想,相信那种解题的感觉会让你有成就感。
//第一题:创建一个长度为6的整数数组,数组中有六个整数(直接赋值即可)。遍历数组中的每个元素,元素之间用空格隔开
/* public static void main(String[] args) {
int[] arr = {1,5,7,12,22};
for (int i = 0; i <arr.length ; i++) {
System.out.print(" "+arr[i]);
}
}*/
//---------------------------------------------------------------------------------------------------------------
//第二题:现有一个小数数组{12.9,53.54,75.0,99.1,3.14}。请编写代码,找出数组中的最小值并打印。
/*public static void main(String[] args) {
double[] arr = {12.9,53.54,75.0,99.1,3.14};
double min = arr[0];
for (int i = 0; i <arr.length ; i++) {
if (min > arr[i]){
min=arr[i];
}
}
System.out.println("min:" + min);
}*/
//---------------------------------------------------------------------------------------------------------------
//第三题:创建一个长度为6的整数数组。请编写代码,随机生成六个0-100之间的整数存放到数组中,然后再计算出数组中元素的
// 和并打印。
/*public static void main(String[] args) {
int[] arr = new int[6];
int sum = 0;
Random random = new Random();
for (int i = 0; i <arr.length ; i++) {
arr[i] = random.nextInt(100)+1;
System.out.println(arr[i]);
sum +=arr[i];
}
System.out.println("sum:" + sum);
}*/
//---------------------------------------------------------------------------------------------------------------
//第四题:
// 有一个整数数组。请编写代码,让数组的最后一个元素代表个位,倒数第二个元素代表十位,以此类推。最终得到一个大的整数。
// 比如:
// ```
// 原数组:{1,2,3,4,5}
// 最终得到的结果: 12345
/*public static void main(String[] args) {
int[] arr ={2,4,3,2,5};
for (int i = 0; i < arr.length; i++) {
int result = arr[i];
System.out.print(result);
}
}*/
/*public static void main(String[] args) {
int[] arr = {1,2,3,4,5};
int num = 0;
for (int i = 0; i <arr.length ; i++) {
num = num *10 +arr[i];
}
System.out.println(num);
}*/
//---------------------------------------------------------------------------------------------------------------
//第五题:定义一个数组来存储10个学生的成绩{72,89,65,87,91,82,71,93,76,68},计算并输出学生的平均成绩。
/*public static void main(String[] args) {
int[] arr = {72,89,65,87,91,82,71,93,76,68};
double sum = 0 ;
for (int i = 0; i <arr.length ; i++) {
sum += arr[i];
}
System.out.println("平均成绩为:" + (sum/arr.length));
}*/
//---------------------------------------------------------------------------------------------------------------
//第六题:有一个数组,其中有十个元素从小到大依次排列 {12,14,23,45,66,68,70,77,90,91}。再通过键盘录入一个整数数字。
// 要求:把数字放入数组序列中,生成一个新的数组,并且数组的元素依旧是从小到大排列的。执行效果如下:
//
//```
//请输入一个整数数字:
//50
//生成的新数组是:12 14 23 45 50 66 68 70 77 90
/*public static void main(String[] args) {
int[] arr= {12,14,23,45,66,68,70,77,90,91};
int[] brr = new int[11];
int index =0;
Scanner scanner =new Scanner(System.in);
System.out.println("请输入一个数字:");
int number = scanner.nextInt();
for(int i =0; i<arr.length;i++){
if(arr[i]<number){
brr[i]=arr[i];
index = i+1;
}else {
brr[i+1]=arr[i];
}
brr[index]=number;
}
for (int i = 0; i <brr.length ; i++) {
System.out.println(brr[i]);
}
}*/
//---------------------------------------------------------------------------------------------------------------
//第七题:小李用自己的钱买了十只股票,年末他看了各只股票的收益分别是
// 10.4%,-3%,-6.2%,1.2%,-6.1%,-19%,-3.8%,0.9%,-4.5%,5.5%。请使用数组相关知识编程,
// 帮他统计赚钱的股票和赔钱的股票分别有多少只?打印效果如下:
//
//```
//赚钱的股票一共有:4只
//赔钱的股票一共有:6只
/*public static void main(String[] args) {
int zq =0 ;
int kq =0 ;
double[] arr = {10.4,-3,-6.2,1.2,-6.1,-19,-3.8,0.9,-4.5,5.5};
for (int i = 0; i <arr.length ; i++) {
if (arr[i]>0){
zq++;
}else {
kq++;
}
}
System.out.println("赚钱的股票一共有:" + zq + "只" );
System.out.println("赔钱的股票一共有:" + kq + "只" );
}*/
//---------------------------------------------------------------------------------------------------------------
//第七题:定义一个数组其中包含多个数字。用自己的方式最终实现,奇数放在数组的左边,偶数放在数组的右边。
// (可以创建其他数组,不必须在原数组中改变)
/* public static void main(String[] args) {
int[] arr = {1,3,51,8,32,9,11,14,17,5};
int[] brr = new int[arr.length];
int count=0;
int index=0;
for (int i = 0; i <arr.length ; i++) {
if (arr[i]%2!=0) {
brr[count] = arr[i];
count++;
}else {
brr[brr.length-1-index]=arr[i];
index++;
}
}
for (int i = 0; i <brr.length ; i++) {
System.out.println(brr[i]);
}
}*/
//---------------------------------------------------------------------------------------------------------------
//第八题:定义一个分数数组:double[] arr = {88.5,96,97,74,88.2,58.5,77.9,90,99};
//计算分数数组中去掉最低分的平均分,并打印
/* public static void main(String[] args) {
double[] arr = {88.5,96,97,74,88.2,58.5,77.9,90,99};
double sum =0;
double avr= 0;
double min = arr[0];
for (int i = 0; i <arr.length ; i++) {
if (min>arr[i]){
min = arr[i];
}
sum +=arr[i];
}
avr =(sum-min)/arr.length;
System.out.println(avr);
}*/
//---------------------------------------------------------------------------------------------------------------
//第九题:定义2个长度为5的字符串数组arrA和arrB,arrA包含元素{"1","2","3","4","5"};
//arrA中的所有元素按逆序存储在数组arrB中,
//在控制台打印输出arrB数组中所有元素
/*public static void main(String[] args) {
String[] arr = {"1","2","3","4","5"};
String[] brr = new String[arr.length];
int count =0;
for (int i = 0; i <arr.length ; i++) {
brr[brr.length-1-count]=arr[i];
count++;
}
for (int i = 0; i <arr.length ; i++) {
System.out.println(brr[i]);
}
}*/
//---------------------------------------------------------------------------------------------------------------
//第十题:定义一个int类型的一维数组长度为10,使用键盘录入的方式给数组的每个元素赋值,最后求出数组中所有元素的和。
/* public static void main(String[] args) {
int[] arr = new int[10];
int sum = 0;
Scanner sc = new Scanner(System.in);
System.out.println("请输入十组数据:");
for (int i = 0; i <arr.length ; i++) {
arr[i] = sc.nextInt();
sum += arr[i];
}
System.out.println("result:" + sum);
}*/
//---------------------------------------------------------------------------------------------------------------
//第十一题:定义一个int类型的一维数组长度为10,随机生成10个随机数,赋值给数组的元素。
// 要求随机数的范围为:[15,25],最后遍历输出数组
/* public static void main(String[] args) {
int[] arr = new int[10];
Random r = new Random();
for (int i = 0; i <arr.length ; i++) {
arr[i]=r.nextInt(16)+10;
System.out.println(arr[i]);
}
}*/
//---------------------------------------------------------------------------------------------------------------
题目12 获取数组中元素值为偶数的累加和与元素值为奇数的累加和,并计算他们之间的差值
/*public static void main(String[] args) {
int[] arr = new int[5];
Scanner scanner = new Scanner(System.in);
for (int i = 1; i < 6; i++) {
System.out.println("请输入第" + i + "个数字:");
int number = scanner.nextInt();
arr[i - 1] = number;
}
print(arr);
}
public static void print ( int[] arr){
int Double = 0;
int Singer = 0;
int result = 0;
for (int i = 0; i < arr.length; i++) {
if (arr[i] % 2 == 0) {
Double += arr[i];
}
if (arr[i] % 2 != 0) {
Singer += arr[i];
}
}
result = Double - Singer;
if (result >= 0) {
result = result;
} else {
result = -result;
}
System.out.println("偶数和:" + Double + ",奇数和:" + Singer + ",相差:" + result);
}*/
//-------------------------------------------------------------------------------------------------------------
// 题目13 现在main方法中有一个数组int arr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5};
// 定义方法将数组中的0使用1-10之间的随机数替换掉(每一个0都要用一个新的随机数替换),并统计替换了多少个。
// 2. 调用上面定义的方法,替换掉0并统计结果
// 3. 对操作后的数组使用任意格式进行遍历,查看结果
/* public static void main(String[] args) {
int[] arr={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5};
int[] brr={1,2,3,4,5,6,7,8,9,10};
Random random = new Random();
int count=0;
for (int i = 0; i <arr.length ; i++) {
if(arr[i]==0){
int key=random.nextInt(10)+1;
arr[i]=brr[key];
count++;
}
}
for (int i = 0; i <arr.length ; i++) {
System.out.println(arr[i]);
}
System.out.println(" ");
System.out.println("count:"+ count);
}*/
//-------------------------------------------------------------------------------------------------------------
|
|