zoukankan      html  css  js  c++  java
  • 数组及其练习题

    数组:
    一组变量
    可以批量处理同一类型的数据

    一维数组,二维数组,多维数组

    定义一维数组:
    一、int[] aa = new int[5];
    定义了一个长度为5的int类型数组,但是未赋值,里面默认5个0,string类型的数组,未赋值的情况下,里面默认是“”;

    二、int[] aa = new int[5]{1,2,3,4,5};
    定义了一个长度为5个int类型数组,并且立刻给它5个空都赋上值;

    三、int[] bb = new int[] {22,33,44,55,66};
    不定义长度,直接赋值,计算机会自动计算长度;

    赋值:
    aa[0] = 值;

    取值:
    int a = aa[0];

    PS:定义时,中括号里放的是长度
    而使用时是索引,下标
    ------------------------------------------------------------------------
    二维数组:
    1、定义
    int[] aa = new int[2,4]
    {{1,2,3,4},{5,6,7,8}};
    //2表示这个二维数组里有两个一维数组,4表示每个一维数组的长度。
    2、赋值:
    aa[0,1] = 值;
    //0表示从这个二维数组里的第一个一维数组,1表示从第一个数组里的序位数为1的值。
    3、取值:
    int a = aa[0,1];

    PS:取值时一定要看好中括号里的每一条信息
    ------------------------------------------------------------------------
    三维数组:
    1、定义
    int[] aa = new int[2,3,4]
    {
    {{1,2,3,4},{5,6,7,8},{10,22,33,55}},
    {{11,22,33,44},{55,66,77,88},{99,110,220,330}}
    };
    //2表示这个三维数组里有两个二维数组,3表示这个二维数组里有三个一维数组,4表示每个一维数组的长度。
    2、赋值:
    aa[0,1,3] = 值;
    //0表示从这个三维数组里的第一个二维数组,1表示从第一个二维数组里的第一个一维数组,3表示从第一个一维数组里的序位数为3的值。
    3、取值:
    int a = aa[0,1,3];

    ------------------------------------------------------------------------
    练习题:
    1、

    请输入学员的人数:
    请输入第1个学员的分数:
    请输入第2个学员的分数:
    ....
    请输入第n个学员的分数:
    *******************************
    一共n个学生;
    第1个学员的分数是:
    第2个学员的分数是:
    ....
    第3个学员的分数是:
    总分是:
    平均分是:
    *******************************
    最高分是第x个学生,分数是:
    最低分是第y个学生,分数是:

                //接收用户输入的人数
                Console.Write("请输入学生的人数:");
                int n = Convert.ToInt32(Console.ReadLine());
    
                //第一一个无限长度的一维数组           
                decimal[] a = new decimal[n];
                for (int i = 0; i < n; i++)
                {
                    Console.Write("请输入第" + (i + 1) + "个学生的成绩:");
                    a[i] = Convert.ToDecimal(Console.ReadLine());
                }
                Console.WriteLine("*******************************");
                Console.WriteLine("一共有" + n + "个学生。");
                decimal end = 0m;
                for (int j = 0; j < n; j++)
                {
                    Console.WriteLine("" + (j + 1) + "个学生的成绩是:" + a[j]);
                    end += a[j];
                }
                Console.WriteLine("总分是:" + end);
                Console.WriteLine("平均分是:" + (end / n));
                Console.WriteLine("*******************************");
                decimal min = 100, max = 0;
                int b = 0, c = 0;
                for (int k = 0; k < n; k++)
                {
                    if (min > a[k])
                    {
                        min = a[k];
                        c = k + 1;
                    }
                    if (max < a[k])
                    {
                        max = a[k];
                        b = k + 1;
                    }
                }
                Console.WriteLine("最高分是第" + b + "个学生,分数是:" + max + ";最低分是第" + c + "个学生,分数是:" + min);
                Console.ReadKey();

    2、

    冒泡排序:定义一个长度为10的int类型一维数组,
    里面的值随意输入10个,然后让数组从大到小排列出来

                //1、定义长度为10的一维数组
                int[] a = new int[10] { 3, 5, 2, 6, 34, 56, 23, 78, 9, 10 };
    
                //2、判断大小
                int z = 0;
                for (int i = 0; i < 10; i++)
                {
                    for (int j = i + 1; j < a.Length; j++)
                    {
                        if (a[i] < a[j])//从大到小排列打印,if (a[i] > a[j]) 从小到大排列打印
                        {
                            z = a[i];
                            a[i] = a[j];
                            a[j] = z;
                        }
                    }
                }
    
                for (int i = 0; i < a.Length; i++)
                {
                    Console.WriteLine(a[i]);
                }
    
    
                Console.ReadLine();

  • 相关阅读:
    随机选择
    Creating Apps With Material Design —— Defining Shadows and Clipping Views
    HDU 1853Cyclic Tour(网络流之最小费用流)
    053第502题
    【ThinkingInC++】64、重载new和delete,来模仿内存的分配
    Android设置里面默认存储器选项(default write disk)的实现
    Transparency Tutorial with C#
    ssh远程登录linux live系统
    JAVA把字符串当作表达式执行
    [Head First设计模式]生活中学设计模式——组合模式
  • 原文地址:https://www.cnblogs.com/123lucy/p/5536068.html
Copyright © 2011-2022 走看看