精华内容
下载资源
问答
  • 一维数组定义一维数组的引用 内存中一串连续的存储单元(变量),叫数组。指针移动和比较只有在一串连续的数组中才有意义。 当数组中每个变量只带一个下标时,为一维数组定义一个一维数组: 类型名 数组...

    一维数组的定义和一维数组的引用

    内存中一串连续的存储单元(变量),叫数组。指针移动和比较只有在一串连续的数组中才有意义。

    当数组中每个变量只带一个下标时,为一维数组。

    定义一个一维数组:

    类型名 数组名【常量表达式】  如:int a[8];

    说明: ①定义一个一维整型名为a的数组。

               ②方括号中规定此数组有8个元素,(a【0】-a【7】),不存在a【8】这个元素。

               ③a数组中每个元素均为整型,且每个元素只能存放整型。

               ④每个元素只有一个下标,且第一个元素的下标总为0。

               ⑤c编译程序,为a数组开辟8个连续存储单元。

    3)在定义数组语句中,可以有多个数组说明符;它们用逗号隔开。

    例:double a【22】,v【100】,u【5】,a,b,c;  注:双精度型 每个单元占用8个字节的存储空间。另外,也可以和普通变量一起定义。

    用逗号分隔开。

     

    一维数组元素的引用2

    1)

    引用形式:数组名 【下标表达式】可以是:常量,变量,表达式。

    如:double x【8】  则   x【0】  x【j】  x【i+k】均合法

    2)

    (1)一个数组元素实际上就是一个变量名,代表内存中的一个存储单元。我们可以把数组元素看做一个变量名来处理。

    (2)一个数组不能整体引用,数组名中存放的是一个地址常量,它代表整个数组的首地址。当学习指针时,引用的变量的地址,就是变量中第一个字节的地址。数组的首地址也是它的第一个元素的第一个字节的地址,即它的首地址。

    数组的首地址存放在数组名中。所以说,数组名就代表一个地址。数组名是一个地址值。

    (3)在引用数组元素时,数组元素下标表达式必须是整数,下标表达式下限为0.系统并不自动检验数组元素下标是否越界,因此编程时要注意。

    如:double a,b; int c[10];

          a=2.0;b=3.0;

      则a[i]; 是不合法的。

     

    给数组赋初值时,如果所赋初值少于元素个数时,后面的元素补为0,字符补为’\0’

    可以通过赋初值来定义一个数组的大小。如:int a[]={0,0,0,0,0};  相当于:a[5]={0};

     

    一维数组的初始化

    void main()

    {

          int i,j,a[30];

          for (i=0,j=1;i<30;i++,j+=2)

          a[i]=j;

          for (i=0;i<30;i++)

          {

               if (i%10==0)  printf(“\n”); /*i等于10,到了十,输入回车。因为0-9就是十个*/

    printf(“%d, ”,a[i]);

          }

    for (i=29;i>=0;i--)

    {

    printf(“%d, ”,a[i]);

    if (i%10==0) printf(“\n”);      /*先输出第i=20这个元素,再输入回车。*/

    }

    getch();

    }

    展开全文
  • 一维数组和二维数组的定义及用法

    万次阅读 2018-06-08 19:03:01
    一维数组定义 类型说明符 数组名 [常量表达式]; 在此说明:常量表达式必须是常量和常量符号。常量表达式定义了数组的长度。在宏定义中#define定义一个符号常量,则这个符号常量可以用来声明数组的个数 #define...

    一维数组的定义

    类型说明符  数组名 [常量表达式];

    在此说明:常量表达式必须是常量和常量符号。常量表达式定义了数组的长度。在宏定义中#define定义一个符号常量,则这个符号常量可以用来声明数组的个数

    #define n=9

    .....

    int arr[n];

     

    一维数组的引用

    数组必须先定义在使用,可以通过引用数组元素方式使用该数组中的元素,如arr[0]就是访问的数组的第一个元素。

    一维数组初始化的方式有三种

    1.完全初始化

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

    2.部分初始化,没有赋值的元素默认值为0

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

    因为这个数组有留个元素,前三个分别赋值为1,2,3,后边没赋值他们就为0。

     

    3.不指定数组长度,系统会根据元素个数定义数组的长度。

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

    注意事项:

    1.数组名不能和其他变量名相同如下:

    int a;

    int a[];

    2.[]里面一定为常量表达式,常量表达式可以是整型常量,整形符号常量和整形常量表达式

     

    3.避免数组越界。数组元素个数不能超过给定的值。

     

    4.给数组赋值只能逐个赋值,不能整体赋值。

     

    二维数组的定义

    类型说明符  数组名 [常量表达式1] [常量表达式2];

            int arr[n][m];//定义了一个n行m列的数组

    二维数组的引用

    与一维数组引用的方式一样都是通过引用数组下标的方式引用的。如arr[0][0],arr[0][1]

     

    二维数组初始化方法

    1.安行连续赋值,即将所有的数据写在一个大括号内,按照元素排列顺序对元素赋值。

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

    2.给所有元素赋初值时,可以省略行标,但列标一定不能省略。

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

    3.按行分段赋值,可以分行给数组元素赋值

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

     

    4.也可以直接对元素赋值

           int a[2][2]

              a[0][0] = 1;

              a[0][1] = 2;

     

     

    字符数组的定义

    char   数组名 [常量表达式];

                 char arr[5];

     

    字符数组的引用

    与其他数组引用方式相同,也是通过下标访问的。如arr[0]='a';\

     

    字符数组的初始化:

    1.逐个把字符赋给字符数组

    char arr[5] = {'a','b','c','d','e'};

     

    2.如果在定义字符数组长度时进行初始化,可以省略数组长度

    char arr[] = {'a','b','c','d','e'};

     

    3.利用字符串给字符数组赋值。

    char arr[] = {"hello"};

    或者将{}去掉

    char arr[5] = "hello";

     

    注意字符数组的结束标志为'\0'。

    字符数组的输入输出方式

    1."%c",实现的是单个字符的输入和输出

    int main(void)

    {

            char arr[] = { 'a', 'b', 'c', 'd', 'e' };

            int i = 0;

            int sz = sizeof(arr) / sizeof(arr[0]);

            for (i = 0; i < sz; i++)

            {

                   printf("%c ", arr[i]);

            }

            system("pause");

            return 0;

    }

    2."%s",实现的是字符串的输入和输出。

     

    int main(void)

    {

            char arr[] = "hello";

            int i = 0;

            printf("%s ", arr);

            system("pause");

            return 0;

    }

     

     

     

     

     

     

     

     

    展开全文
  • 一维数组定义方式

    万次阅读 2016-08-11 20:14:26
    一维数组定义方式 在C语言中使用数组必须先进行定义一维数组定义方式为:  类型说明符 数组名 [常量表达式]; 其中,类型说明符是任一种基本数据类型或构造数据类型。数组名是用户定义的数组标识符。方括号...

    一维数组的定义方式

    在C语言中使用数组必须先进行定义。 一维数组的定义方式为:
        类型说明符 数组名 [常量表达式];
    其中,类型说明符是任一种基本数据类型或构造数据类型。数组名是用户定义的数组标识符。方括号中的常量表达式表示数据元素的个数,也称为数组的长度。例如:
       
    1. int a[10]; /* 说明整型数组a,有10个元素 */
    2. float b[10], c[20]; /* 说明实型数组b,有10个元素,实型数组c,有20个元素 */
    3. char ch[20]; /* 说明字符数组ch,有20个元素 */

    对于数组类型说明应注意以下几点:
    1) 数组的类型实际上是指数组元素的取值类型。对于同一个数组,其所有元素的数据类型都是相同的。

    2) 数组名的书写规则应符合标识符的书写规定。

    3) 数组名不能与其它变量名相同。例如:
       
    1. int a;
    2. float a[10];
    是错误的。

    4) 方括号中常量表达式表示数组元素的个数,如a[5]表示数组a有5个元素。但是其下标从0开始计算。因此5个元素分别为a[0], a[1], a[2], a[3], a[4]。

    5) 不能在方括号中用变量来表示元素的个数,但是可以是符号常数或常量表达式。例如:
       
    1. #define FD 5
    2. // ...
    3. int a[3+2],b[7+FD];
    是合法的。但是下述说明方式是错误的。
       
    1. int n=5;
    2. int a[n];

    6) 允许在同一个类型说明中,说明多个数组和多个变量。例如:
       
    1. int a,b,c,d,k1[10],k2[20];

    一维数组元素的引用

    数组元素是组成数组的基本单元。 数组元素也是一种变量, 其标识方法为数组名后跟一个下标。 下标表示了元素在数组中的顺序号。数组元素的一般形式为:
        数组名[下标]
    其中下标只能为整型常量或整型表达式。如为小数时,C编译将自动取整。例如:
        a[5]
        a[i+j]
        a[i++]
    都是合法的数组元素。

    数组元素通常也称为下标变量。必须先定义数组,才能使用下标变量。 在C语言中只能逐个地使用下标变量,而不能一次引用整个数组。例如,输出有10个元素的数组必须使用循环语句逐个输出各下标变量:
       
    1. for(i=0; i<10; i++)
    2. printf("%d",a[i]);
    而不能用一个语句输出整个数组。因此,下面的写法是错误的:
       
    1. printf("%d",a);

    【例7-1】使用for循环为一个数组赋值,并将数组倒叙输出。
       
    1. #include <stdio.h>
    2. int main(void){
    3. int i,a[10];
    4. for(i=0;i<=9;i++)
    5. a[i]=i;
    6. for(i=9;i>=0;i--)
    7. printf("%d ",a[i]);
    8. return 0;
    9. }

    【例7-2】将上面的例子稍微改变一下。
       
    1. #include <stdio.h>
    2. int main(void){
    3. int i,a[10];
    4. for(i=0;i<10;)
    5. a[i++]=i;
    6. for(i=9;i>=0;i--)
    7. printf("%d",a[i]);
    8. return 0;
    9. }

    一维数组的初始化

    给数组赋值的方法除了用赋值语句对数组元素逐个赋值外, 还可采用初始化赋值和动态赋值的方法。

    数组初始化赋值是指在数组定义时给数组元素赋予初值。数组初始化是在编译阶段进行的。这样将减少运行时间,提高效率。初始化赋值的一般形式为:
        类型说明符 数组名[常量表达式] = { 值, 值……值 };
    其中在{ }中的各数据值即为各元素的初值,各值之间用逗号间隔。例如:
       
    1. int a[10]={ 0,1,2,3,4,5,6,7,8,9 };
    相当于
    a[0]=0; a[1]=1 ... a[9]=9;

    C语言对数组的初始化赋值还有以下几点规定:
    1) 可以只给部分元素赋初值。当{ }中值的个数少于元素个数时,只 给前面部分元素赋值。例如:
       
    1. int a[10]={0,1,2,3,4};
    表示只给a[0]~a[4]5个元素赋值,而后5个元素自动赋0值。

    2) 只能给元素逐个赋值,不能给数组整体赋值。例如给十个元素全部赋1值,只能写为:
       
    1. int a[10]={1,1,1,1,1,1,1,1,1,1};
    而不能写为:
       
    1. int a[10]=1;

    3) 如给全部元素赋值,则在数组说明中,可以不给出数组元素的个数。例如:
       
    1. int a[5]={1,2,3,4,5};
    可写为:
       
    1. int a[]={1,2,3,4,5};

    一维数组程序举例

    可以在程序执行过程中,对数组作动态赋值。 这时可用循环语句配合scanf函数逐个对数组元素赋值。

    【例7-4】输入10个数字并输出最大值。
       
    1. #include <stdio.h>
    2. int main(void){
    3. int i,max,a[10];
    4. printf("input 10 numbers:\n");
    5. for(i=0;i<10;i++)
    6. scanf("%d",&a[i]);
    7. max=a[0];
    8. for(i=1;i<10;i++)
    9. if(a[i]>max) max=a[i];
    10. printf("maxmum=%d\n",max);
    11. return 0;
    12. }
    本例程序中第一个for语句逐个输入10个数到数组a中。 然后把a[0]送入max中。在第二个for语句中,从a[1]到a[9]逐个与max中的内容比较,若比max的值大,则把该下标变量送入max中,因此max总是在已比较过的下标变量中为最大者。比较结束,输出max的值。

    【例7-5】输入10个数字并按从大到小的顺序排列。
       
    1. #include <stdio.h>
    2. int main(void){
    3. int i,j,p,q,s,a[10];
    4. printf("\n input 10 numbers:\n");
    5. for(i=0;i<10;i++)
    6. scanf("%d",&a[i]);
    7. for(i=0;i<10;i++){
    8. p=i;q=a[i];
    9. for(j=i+1;j<10;j++)
    10. if(q<a[j]){
    11. p=j;q=a[j];
    12. }
    13. if(i!=p){
    14. s=a[i];
    15. a[i]=a[p];
    16. a[p]=s;
    17. }
    18. printf("%d",a[i]);
    19. }
    20. return 0;
    21. }
    本例程序中用了两个并列的for循环语句,在第二个for 语句中又嵌套了一个循环语句。第一个for语句用于输入10个元素的初值。第二个for语句用于排序。本程序的排序采用逐个比较的方法进行。在i次循环时,把第一个元素的下标i赋于p,而把该下标变量值a[i]赋于q。然后进入小循环,从a[i+1]起到最后一个元素止逐个与a[i]作比较,有比a[i]大者则将其下标送p,元素值送q。一次循环结束后,p即为最大元素的下标,q则为该元素值。若此时i≠p,说明p,q值均已不是进入小循环之前所赋之值,则交换a[i]和a[p]之值。 此时a[i]为已排序完毕的元素。输出该值之后转入下一次循环。对i+1以后各个元素排序。
    展开全文
  • 数组的定义 定义:是长度固定的,存储元素类型相同的容器. 数组的分类 按维度分: 一维数组 二维数组 多维数组 按类型分 ...一维数组: 定义:一维数组是使用一个下标访问数组元素的数组 ...

    数组的定义

    定义:是长度固定的,存储元素类型相同的容器.
    

    数组的分类

    • 按维度分:
    1. 一维数组
    2. 二维数组
    3. 多维数组
    • 按类型分
    1. 基本数据类型数组

    2. 引用数据类型数组

      知识点1:数组在内存中是一块连续的空间,用于存储相同类型的数据
      知识点2:数组下标是数组中的元素标识,一般从0开始 
      

      一维数组:

      定义:一维数组是使用一个下标访问数组元素的数组
      

    在这里插入图片描述

    定义数组常见错误:

    1.在这里插入图片描述
    2.在这里插入图片描述
    3.在这里插入图片描述
    4.在这里插入图片描述
    以上就是我关于一维数组的一些见解和碰到的一些简单的错误,会持续更新

    展开全文
  • JAVA中一维数组和二维数组的定义

    万次阅读 多人点赞 2008-12-30 15:28:00
    在java中数组被看成是一个对象在定义数组时,有两种定义方法:int[] a 和int a[];第二种是C/C++对数组定义方式,对于JAVA...1 一维数组定义 //定义包含三个元素的一维数组 //方法1,先new对象,然后再初始化每个元
  • 1.一维数组定义 类型名 数组名[元素个数]; double array[10]; 类型名:每个数组元素的数据类型 数组名:储存该数组的变量名 数组的元素个数必须是编译时的常量 #define len1 10; const int len2 = 5; double ...
  • 一维数组定义以及使用

    千次阅读 2019-10-13 13:47:45
    一、一维数组定义 类型说明符 数组名[常量表达式] int a[10];//a为整型数组,有10个元素 二、为何引入数组 引入数组是为了便于处理大量的数据的问题可以创造多个变量 数组名构成与一般变量名相同,常量表达...
  • C语言一维数组定义和引用

    千次阅读 2016-11-03 22:33:33
    一维数组定义方式  在C语言中使用数组必须先进行定义一维数组定义方式为:  类型说明符 数组名 [常量表达式];  其中,类型说明符是任一种基本数据类型或构造数据类型。数组名是用户定义的数组标识符。方...
  • Python numpy实现二维数组和一维数组拼接的方法撰写时间:2017.5.23一维数组1.numpy初始化一维数组a = np.array([1,2,3]);print a.shape输出的值应该为(3,)二维数组2.numpy初始化二维数组a = np.array([[1,2,3]])...
  • 1.2 一维数组定义、赋值和初始化

    千次阅读 2020-09-21 14:33:38
    当数组中每个元素都只带有一个下标时,这种数组就是“一维数组”。一维数组(one-dimensional array)实质上是一组相同类型数据的线性集合,是数组中最简单的一种数组。 数组是引用数据类型,引用数据类型在使用之前...
  • 后面的整个内容将围绕着一维数组展开,并且在学习一维数组之后会介绍一些一维数组的操作和使用。 表达式使用 我们在遇到的表达式里面通常包括: 关系表达式: 赋值表达式:= ,+= , -=, ×=, /=...
  • (1) 如何定义(声明)一维数组? 声明格式:数据类型[] 数组名称; (2) 数组的初始化 数组声明之后就需要初始化,即:分配内存空间。使用关键字new为数组分配内存空间。 初始化格式:数据类型[] 数组名称 = new ...
  • java 二维数组定义格式

    千次阅读 2020-02-16 23:39:17
    m表示这个二维数组有多少个一维数组 n表示每一个一维数组的元素个数 举例: int[][] arr = new int[3][2]; 定义了一个二维数组arr 这个二维数组有3个一维数组,名称是arr[0],arr[1],arr[2] 每个...
  • Java中定义一个二维数组

    万次阅读 2018-12-08 18:53:00
    * 第1个3代表这个二维数组是由3个一维数组构成的 * 第2个3代表每个一维数组的元素的个数有3个 * * 二维数组分类 * 1:规则二维数组:每个一维数组的元素个数相同 * 2:不规则二维数组...
  • java中二维数组定义

    2019-09-27 17:38:52
    想当于定义个3*4的二维数组,数组长度为3,二维数组中每个元素又是个长度为4的数组 2、int arr[][]=new int[3][]; 表示定义个二维数组arr,里面包含3个数组,每个数组的元素长度不确定 3、int arr[][]={{1,...
  • C++ 一维数组

    千次阅读 2019-12-16 20:36:05
    先来说一下一维数组定义一维数组即为下标只有一个的数组,一维数组也是最简单的数组 数组也就是一组按照顺序排列在一起且类型相同的多个数据,严格来说,数组并不是一种数据类型,而是一组相同数据类型的变量...
  • 正确定义维数组

    万次阅读 多人点赞 2019-06-24 16:23:17
    维数组进行正确初始化 二维数组必须指定列的数量,行的数量可以不定义即可以省略第一维定义,但不能省略第二维的定义 1.分行进行初始化 int a[2][3] = {{1,2,3},{4,5,6}}; 在{}内部再用{}把各行分分开,第0行...
  • // // main.cpp // 二维数组 // 1.一个二维数组就像是若干个相同的数组放在一起,这对于存储多组...处理二维数组的时候直接当作一维数组就可以了每一行都是一个一维数组。 // 5.二维数组在存储的时候,是按照一行...
  • 、二维数组定义 语法:类型说明符 数组名[常量表达式][常量表达式] 例:float a[3][4] //理解为 a00 a01 a02 a03 a10 a11 a12 a13 a20 a21 a22 a23 a30 a31 a32 a33 由此可知a[i][j]为I行J列 二、二...
  • #Python# 二维数组定义、使用的几种方法

    万次阅读 多人点赞 2019-05-16 16:20:36
    之前Python里面创建、使用二维数组也很懵,于是也上网查了一些讲解,也发现一些类似的问题,大多数存在着 以为定义正确了二维数组,但修改数据的时候,发现数据经常一起串改。如: b=[[0,0,0]]*3 b[0][1]=1 #...
  • 小结了一维数组和二维数组的创建与初始化、使用、存储、指针访问和几个小点
  • 在做项目的时候遇到一个将一维数组转为二维数组的问题。...现在data中定义两个列表,一个用于接收接口拿来的一维数组列表,另一个用于存放转成二位之后的数组列表 data() { return { //这个是给接口
  • c语言二维数组定义和初始化

    万次阅读 2015-09-03 00:44:57
    用于存放位数组的数组,被称为二维数组。 #include //二维数组的长度 #define kI 3 #define kJ 4 /** 打印二维数组元素 */ void printfArray(int array[][kJ], int x) { for (int i = 0; i ; i++) { ...
  • 一、一维数组定义与初始化 1.一维数组定义 一维数组也称向量,它用以组织具有一维顺序关系的一组同类型的数据。 一维数组定义方式: 数据类型 数组名[常量表达式] 类型说明符表示数组中所有元素的类型;...
  • C语言-二维数组定义、引用

    千次阅读 2019-04-10 19:05:52
    列长度为二维数组行列的个数,必须为常量表达式,不能为变量 二维数组包含的元素的个数是:行长度*列长度,其中每个元素占据的字节数是 sizeof(数据类型),故二维数组占据的内在字节数是 行长度*列长度*sizeof...
  • c语言==一维数组与二维数组(2)

    千次阅读 2016-07-07 17:34:06
    一维数组与二维数组 排序,输出三角形
  • 维数组正确初始化规则

    千次阅读 多人点赞 2019-03-19 20:30:50
    这里提一句一维数字代表行,二维数字代表列 arr[2][3]就是创建两行三列的数组 二维数组在初始化的时候可以分行进行初始化 int arr[2][3] = { { 1, 2, 3 }, { 4, 5, 6 } }; 二维数组也可以进行放在一起进行初始化...
  • 基本与一维数组类似 //定义一个3行5列的二维数组 //方法1,先new对象,然后再初始化每个元素 int[][] a = new int[3][5];  a[0][0]=1; a[0][1]=2; a[0][2]=3; class BBB { public static ...
  • python 创建二维数组和一维数组

    千次阅读 2019-07-10 08:48:35
    一维数组: 二维数组: 写代码的时候需要使用python创建二维数组: num_list = [ [0]*5 ]*2 print(num_list) 输出:[[0, 0, 0, 0, 0], [0, 0, 0, 0, 0]] 看输出觉得这种方法是的,结果程序出现了错误,经过...
  • 维数组定义格式

    千次阅读 2020-10-07 17:56:07
    维数组定义格式

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 67,109
精华内容 26,843
关键字:

对一维数组的正确定义