zoukankan      html  css  js  c++  java
  • 数组

    数组概念:把具有相同类型的若干变量按有序形式组织起来。

    数值数组

    • 一维数值数组:

        short a[10];  int a[10];  long int a[10];

        float a[10];  double a[10];

        • 一维数组的定义:类型符 数组名 [常量表达式];

         1.数组名的定义符合标识符的书写规范,由数字、字母,下划线组成,第一个字符必须是字母或下划线。

         2.数组名不能与其它变量名相同。

         3.方括号中常量表达式表示数组元素的个数,其下标从0开始。

            如:int a [3];  //表示数组a有三个元素,分别为a[0],a[1],a[2]。

         4.不能再方括号中用变量来表示元素的个数。

            如:int n = 5;

              int a[n];  

        • 一维数组的初始化:在定义数组的同时进行赋值,称为初始化。

         1.定义数组时可以逐个列出数组的值。

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

         2.给全部元素赋值时可以不给出数组元素的个数,省略下标值。

            如:int a [5] = {1,2,3,4,5};  可写为  int a [] = {1,2,3,4,5};

         3.可以只给部分元素赋初值。

            如:int a [10] = {1,2,3,4,5};  //只给a[0]~a[4]5个元素赋值,后5个元素自动赋值为0

         4.全局数组若不初始化,编译器将其初始化为0;局部数组若不初始化,内容为随机数。

    • 二维数值数组:

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

        int a[2][3] = {{80,76,92},{64,59,100}};

       float a[2][3] = {

               {80.5,98.5,60.5},

               {67.5,81.5,72.5}

             };

         • 二维数组的定义:类型说明符 数组名 [常量表达式][常量表达式];

         1.命名规则同一维数组。

         2.int a[2][3];  //定义了一个两行三列的二维数组,数组名为a,其元素类型为整型,元素个数为2X3=6个。分别为:

            a[0][0] a[0][1] a[0][2]

            a[1][0] a[1][1] a[1][2]

         3.二维数组有两个下标,标识它在数组中的位置。

         4.二维数组实际的硬件存储器是连续编址的,在内存中,各元素是连续存放的,即放完一行之后顺序放入第二行。

        • 二维数组的初始化:在定义数组的同时进行赋值,称为初始化。

         1.定义数组时可以逐个列出数组的值。

            按行分段赋值可写为:

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

            按行连续赋值可写为:

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

         2.可以只给部分元素赋初值,未初始化则为0。

            如:int a [2][3] = {{1,2},{3}};  //只给a[0][0]、a[0][1]、a[1][0]元素赋值,其它元素自动赋值为0

         3.全局数组若不初始化,编译器将其初始化为0;局部数组若不初始化,内容为随机数。

         4.给全部数组元素赋初值时,定义数组时对第一维的长度即行下标可以省略不指定,但第二维的长度即列下标不能省。

            如:int a[3][4] = {1,2,3,4,5,6,7,8,9,10,11,12};  等价于  a[][4] = {1,2,3,4,5,6,7,8,9,10,11,12};

            在定义时也可只对部分元素赋初值而省略行下标,但应分行赋初值。

              例如:int a[][4] = {{0,0,3},{ },{2,10}};

    字符数组 

    • 字符数组的定义

       char str = {'c','','p','r','o','g','r','a','m'}; 

       char str = "c program";

       char a[][5] = {

              {'h','e','l','l','o'},

              {'w','o','r','l','d'}

             };

       char a[][6] = {"hello","world"};

    • 字符数组的引用

       1.用字符串方式赋值比用字符逐个赋值要多占一个字节,用于存放字符串结束标志符'\0','\0'是由C编译系统自动加上的。

          比如:char str = "c program";在内从中的实际存放为:'c' ' ' 'p' 'r' 'g' 'r' 'a' 'm' '\0'

        2.字符数组的输入输出函数

          字符串输入函数:gets();

          字符串输出函数:puts();

          gets()与scanf()的区别:gets()允许输入的字符串含有空格,scanf()不允许含有空格。

  • 相关阅读:
    ROS学习笔记六:xxx.launch文件详解
    XML 基础学习
    Qt之界面(自定义标题栏、无边框、可移动、缩放)
    (转)YV12 and NV12
    FFMPEG的解码后的数据格式
    (转)使用AfxGetMainWnd函数的一个心得
    mout系统流程
    关于多画面窗口切换的刷新重绘问题
    (转)Invalidate、RedrawWindow与UpdateWindow的区别
    (转)关于三星cortex A9 Sate4412 开发板 uboot 启动的一些问题释疑
  • 原文地址:https://www.cnblogs.com/lemongirl/p/7883561.html
Copyright © 2011-2022 走看看