第二周考试

1.什么是数组,你自己如何理解数组的?

能放很多相同类型数据的一个容器

2.:数组的概念?有什么特点?

数组是用来存储同一数据类型多个元素的容器。

    1)存储的元素必须是同一数据类型,比如存储的所有元素都是int类型。

    2)数组长度是固定的。

3:数组的定义格式?

动态:
    数据类型[]  数组名称 = new 数据类型[数组长度];

    数据类型  数组名称[] = new数据类型[数组长度];
静态:
    数据类型[]  数组名称 = new 数据类型[数组长度];

    数据类型  数组名称[] = new数据类型[数组长度];

简化格式:
    数据类型[] 数组名称 = {元素1,元素2,元素3...};

    数据类型 数组名称[] = {元素1,元素2,元素3....};

4.Java中的内存分配有哪些?请分别说明存储什么内容在里面

栈内存:在函数中定义的基本类型变量和对象的引用变量
堆内存:用来存放由new创建的对象和数组以及对象的实例变量

5. 下列数组的声明有哪些是对的?错的应该怎么修改?
A. int[] a;
B. int a[] = new int[3];
C. int[] a;
a = {1,2,3,4,5};        ×    int[] a = {1,2,3,4,5}
D. int[] a = new int[3]{1,2,3};        ×    int[] a = new int[]{1,2,3}


6. 给定一个数组,输出数组中的最大值和最小值(键盘录入一个数组,5个元素)


最大:
public static void main(String[] args) {
           int []arr ={59,15,63,44,24,82,96};
    int max = arr[0];
     for(int x=1;x<arr.length;x++){
        if(arr[x]>max)
                    max=arr[x];
    }    
}
最小:
    int min = arr[0];
    for (int x=1;x<arr.length;x++){
        if(arr[x]<min)
        min=arr[x];
    }    

7.给定一个数组,把这个数组中所有元素顺序进行逆序。(静态初始化)

int []arr ={59,15,63,44,24,82,96};
    for(int start = 0 ,end = arr.length-1 ; start<end ; start++,end --){
    int temp  = arr[start] ;
    arr[start] = arr[end] ;
    arr[end] = temp ;
    }
8.模拟登录功能,键盘录入用户名和密码String类型都是,和已知(你自己定义)存在的用户名和密码进行对比
(使用String的equals(String other)),不断录入用户名和密码,直到一致后,提示"登录成功",否则登录失败,请重新输入!


import java.util.Scanner;
class ZuoYe{
    public static void main(String[] args) {
        String username = "admin";
        String password = "admin";
        Scanner sc = new Scanner(System.in);
            System.out.println("请输入用户名:");
            String name = sc.nextLine();
            System.out.println("请输入密码:");
            String pwd = sc.nextLine();
            if(username.equals(name) && password.equals(pwd)) {
                System.out.println("登录成功");
            }else {
                System.out.println("登录失败");
                }
            }
        }
    

9.int[] arr = {10,55,30,24,17} ;
查询30这个元素第一次在数组中出现的索引,查询元素使用功能完成!

class ZuoYe{
    public static void main(String[] args) {
        int[] arr = {10,55,30,24,17};
        int index = getIndex(arr,30);
        System.out.println("30在数组中第一次出现的索引是:"+index);
        
    }

    public static int getIndex(int[] arr,int value) {
        for(int x=0; x<arr.length; x++) {
            if(arr[x] == value) {
                return x;
            }
        }
        
        return -1;
    }
}
    
10.写一个方法,接受一个整数n,输出1+2+3+...+n 的和

import java.util.Scanner;
class ZuoYe{
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入一个数:");
        int n = sc.nextInt();
        int result = add(n);
        System.out.println(result);
    }

    public static int add(int n) {
        int sum = 0;
        for (int i = 1; i <= n; i++) {
            sum += i;
        }
        return sum;
    }
}

11.写一个方法,计算两点(x1, y1)和(x2, y2)之间的距离

12.键盘录入6个不同的数据(无序),创建一个数组,然后将数组中的元素冒泡排序(使用方法完成!)

class ZuoYe{
    public static void main(String[] args){
        int[] arr = {99,88,77,66,55,44} ;
        printArray(arr) ;
    }
    public static void printArray(int[] array){
        for(int x = 0 ; x < array.length-1 ; x ++){
            for(int y = 0 ; y < array.length-1-x ; y ++){
                if(array[y] > array[y+1]){
                    
                    int temp = array[y] ;
                    array[y] = array[y+1] ;
                    array[y+1] = temp ;
                }
            }
        }
    }
    
}

13.    放假期间预习下面向对象,资料会在群里,提前看看

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值