• 数组讲稿


    数组的实质:批发变量。

    引例:有6个数,1,3,5,2,4,6。统计它们的和、平均数。

    单个指定变量a,b,c....很繁琐,希望出现一组变量(比如a),各个数依次放在a1,a2,a3....a6中。


    声明与初始化,类比于变量:

    声明 初始化 含义  注意事项
    变量的声明:int a; 变量的初始化:a=6; 有个变量a,值为6 -
    数组的声明:int[] a; 数组的初始化:a=new int[6]; 有一堆变量,用a表示,一共有6个 下标从0开始,到5结束

     数组可以在声明的时候赋初值,系统根据初值的个数,完成初始化,如:

     int[] a={1,3,5,2,4,6};

    对于需要赋初值内容不多的一维数组,以下方式也很常见:

    int[] a = new int[100];
                a[0] = a[1] = 1;

    或者这样,效果也是一样的:

    int[] a;
                a= new int[100];
                a[0] = a[1] = 1;

    只要通过new申请了存储空间,没有赋初值的数组元素,得到的都是该类型的默认值(例如int的默认值是0)


    数组元素的访问:数组名[下标]

    例:

    int[] a = { 1, 3, 5, 2, 4, 6 };
                Console.WriteLine(a[0]);
                Console.WriteLine(a[1]);
                Console.WriteLine(a[2]);
                Console.WriteLine(a[3]);
                Console.WriteLine(a[4]);
                Console.WriteLine(a[5]);

    单个数组元素,可以当做变量来使用:

    int[] a = { 1, 3, 5, 2, 4, 6 };
                a[2] = (a[0] + a[3]) * a[5];
                Console.WriteLine(a[2]);

    运行结果是:18。


    数组元素的遍历。

      由于1、数组下标表示元素在数组中的位置;2、数组下标是“0~数组长度-1”的连续整数。

      所以,一般利用循环对数组进行遍历及批量操作。

    例:打印数组(1,3,5,2,4,6)中所有的数

    int[] a = { 1, 3, 5, 2, 4, 6 };
                for (int i = 0; i < 6; i++)
                {
                    Console.WriteLine(a[i]);
                }

    通常,我们用数组名.Length表示数组的长度。上面的程序,更通用的写法就是:

    int[] a = { 1, 3, 5, 2, 4, 6 };
                for (int i = 0; i < a.Length; i++)
                {
                    Console.WriteLine(a[i]);
                }

    数组小练习:

    1. 声明一个长度为100的一维整型数组,依次赋值1~100,输出它们。
    2. 把上面数组中的内容反序输出。
    3. 求1,3,5,2,4,6的和与平均数。
    4. 输出100以内的偶数。
    5. 求出2800、2900、2750和3100中的最小值。
    6. 从键盘输入5个学生的成绩,输出开方乘10之后不及格的成绩。
    7. 乞丐领赏。
    8. 计算斐波拉切数列前20项的值(1,1,2,3,5,8,13...)
    9. 对一组数字(1,3,5,2,4,6)进行移位操作(如右移:6,1,3,5,2,4)
    10. 把50插入到{85,63,49,22,10}中的正确位置。
    11. 把{85,63,49,22,10}按从小到大的顺序排序输出。
    12. 对一组数字(1,3,5,2,4,6)进行查、改、增、删。
    13. 求一组数字中的最大值和第二大值。

    补充:

    foreach

    变量和数组的赋值、修改

    P136,List


    二维数组

    基础:意义、声明、申请存储空间、赋初值

    基本操作:遍历、长度(总长、各维长度)

    练习:

    1. 对0-1矩阵取反
    2. 矩阵转置
    3. 判断象棋棋子的覆盖范围
    4. 打印杨辉三角形
  • 相关阅读:
    拜师鸟哥之linux学习体会(1)——计算器概论
    LeetCode刷题1
    jupyter notebook直接打开.md格式的文件
    [图论]最短网络:prim
    [图论]最短网络:kruskal
    [图论]最优布线问题:kruskal
    A+B Problem
    [图论]最优布线问题:prim
    [图论]求连通分量
    [图论]连通图:深搜(邻接矩阵)
  • 原文地址:https://www.cnblogs.com/wanjinliu/p/14024061.html
Copyright © 2020-2023  润新知