31、关于以下程序段的说法中,正确的有()个。 a = [1,2,[3,4]] b = [1,2,(3,4)] (1)变量a有3个元素 (2)变量b是列表类型 (3)语句b[1]=5不能正常执行 (4)a[2][0]的值为3 (5)b[-1][1]的值为4 (6)语句a[2][0]=5可以正常执行 (7)语句b[-1][1]=6可以正常执行A.4B.5C.6D.7

题目

31、关于以下程序段的说法中,正确的有()个。 a = [1,2,[3,4]] b = [1,2,(3,4)] (1)变量a有3个元素 (2)变量b是列表类型 (3)语句b[1]=5不能正常执行 (4)a[2][0]的值为3 (5)b[-1][1]的值为4 (6)语句a[2][0]=5可以正常执行 (7)语句b[-1][1]=6可以正常执行

A.4

B.5

C.6

D.7


相似考题
更多“31、关于以下程序段的说法中,正确的有()个。 a = [1,2,[3,4]] b = [1,2,(3,4)] (1)变量a有3个元素 (2)变量b是列表类型 (3)语句b[1]=5不能正常执行 (4)a[2][0]的值为3 (5)b[-1][1]的值为4 (6)语句a[2][0]=5可以正常执行 (7)语句b[-1][1]=6可以正常执行”相关问题
  • 第1题:

    已知x=[1,2,3],那么执行语句x[len(x)-1:]=[4,5,6]之后,变量x的值为_________________________________。


    正确答案:[1,2,4,5,6]

  • 第2题:

    以下能正确定义数组并正确赋初值的语句是

    A.int N=5,b[N][N];

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

    C.int c[2][ ]={{1,2},{3,4}};

    D.int d[3][2]={{1,2},{3,4}};


    正确答案:D

  • 第3题:

    以下不能对二维数组a进行正确初始化的说明是( )

    A.inta[2][3]={0}

    B.inta[][3]={{1,2},{0}}

    C.inta[2][3]={{1,2},{3,4},{5,6}}

    D.inta[][3]={1,2,3,4,5,6}


    正确答案:C 

  • 第4题:

    以下定义数组的语句错误的是( )。

    A.int num[]={1,2,3,4,5,6};

    B.int num[][3]={{1,2},3,4,5,6};

    C.int num[2][4]={{1,2},{3,4},{5,6}};

    D.int num[][4]={1,2,3,4,5,6};


    正确答案:B
    二维数组的定义有3种形式,第一种是分行为两位数组赋值,即intnum[]={{12},{3,4},{5,6}},第二种是按照数组排列顺序进行赋值,即intnum[]={1,2,3,4,5,6},第三种为对部分元素赋初值,即intnum[]={{1,2}{},{3,4},{5,6}},所以错误的为B。

  • 第5题:

    下列二维数组初始化语句中,不正确的是( )。

    A.int b[][2]={1,2,3,4,5,6,7};

    B.int b[3][5]={0,0,0};

    C.int b[][4]={1,2},{3,4,5},{6}};

    D.int b[3][2]={(1,2),(3,4),(5,6)};


    正确答案:D
    解析: 在对二维数组元素赋初值时,可以只对部分元素赋初值,未赋初值的元素自动取0;C语言规定,对于二维数组,只可以省略第1个方括号中的常量表达式,而不能省略第2个方括号中的常量表达式;赋的初值不能多于事先定义好的数组元素个数。选项D赋值表达式中对每一维的元素赋初值应用{},而不是0。

  • 第6题:

    下面对二维数组s的初始化语句,正确的是( )。

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

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

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

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


    正确答案:B
    解析:选项A定义的是三行两列的数组,选项C、D错误地省略了第二维的长度声明。二维数组及多维数组定义的简化形式中,可以省略一个或多个括号,甚至只保留最外层的括号。因此正确答案是选项B。

  • 第7题:

    方程f(x)=x23-11.1x22+38.8x-41.77=0的有根区间为(9)。

    A.[1,2]

    B.[3,4]

    C.[1,2]、[3,4]

    D.[1,2]、[3,4]、[5,6]


    正确答案:D
    解析:非线性方程f(x)=0求根,包括求超越方程和代数方程的根x*,方程的根也是f(x)的零点,即f(x*)=0,x,可以是实根也可以是复根,本题以求实根为主。求实根首先要确定根x*所在区间[a,b.,称为有根区间。根据连续函数性质,若f(x)在[a,b.上连续,当f(o)f(b)0时,[d,b.为有根区间,为找到方程f(x)=0的有根区间,可用逐次搜索法,也就是在x的不同点上计算fix),观察f(x)的符号。只要在相邻两点f反号,则得到有根区间,本例得到3个有根区间,分别为[1,2.[3,4.[5,6.。

  • 第8题:

    以下能正确定义数组并赋初值正确的语句是:()。

    • A、intN=5,b[N][N];
    • B、inta[1][2]={{1},{3}};
    • C、intc[2][]={{1,2},{3,4}};
    • D、intd[3][2]={{1,2},{3,4}};

    正确答案:D

  • 第9题:

    以下不能对二维数组a进行正确初始化的语句是()。

    • A、int a[2][3]={0};
    • B、int a[][3]={{1,2},{0}};
    • C、int a[2][3]={{1,2},{3,4},{5,6}};
    • D、int a[][3]={1,2,3,4,5,6};

    正确答案:C

  • 第10题:

    已知x=(0,1,2,3),那么执行语句x.add(4)之后,x的值为()

    • A、{1,2,3}
    • B、{1,2,3,4}
    • C、{1,2}
    • D、AttributeError

    正确答案:D

  • 第11题:

    单选题
    若有定义语句:int m[][3]={1,2,3,4,5,6,7};,则与该语句等价的是( )。
    A

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

    B

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

    C

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

    D

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


    正确答案: D
    解析:
    考查二维数组的初始化。二维数组的初始化有两种方式,①分行初始化,方式为:数据类型数组名[行下标表达式][列下标表达式]={{第0行初值},{第1行初值表},…{最后1行初值表}};,如果初值表只对部分元素赋初值,没有被赋初值的元素将被自动赋值为0。②不分行将所有数据依次列在一个花括号里,即数据类型数组名[行下标表达式][列下标表达式]={初值表};,这种方式的赋值就是将初值表的数据依次赋予数组的每个元素,其中赋值是按照数组元素在内存中的位置进行的。题目中的初始化语句是第二种方法,如果用第一种方法应该是int m[][3] = {{1,2,3}, {4,5,6}, {7}};,这里应该保证除r最后一行,每一行都满列有3个元素,答案选择A选项。

  • 第12题:

    单选题
    以下能正确定义数组并赋初值正确的语句是:()。
    A

    intN=5,b[N][N];

    B

    inta[1][2]={{1},{3}};

    C

    intc[2][]={{1,2},{3,4}};

    D

    intd[3][2]={{1,2},{3,4}};


    正确答案: D
    解析: 暂无解析

  • 第13题:

    已知x=[1,2],那么执行语句x[0:1]=[3,3]之后,x的值为___________。


    正确答案:[3,3,2]

  • 第14题:

    下列二维数组初始化语句中,不正确的是( )。

    A.intb[][2]={1,2,3,4,5,6,7};

    B.intb[3][5]={0,0,0};

    C.intb[][4]={{1,2},{3,4,5},{6}};

    D.intb[3][2]={(1,2),(3,4),(5,6)};


    正确答案:D
    解析: 在对二维数组元素赋初值时,可以只对部分元素赋初值,未赋初值的元素自动取0;C语言规定,对于二维数组,只可以省略第1个方括号中的常量表达式,而不能省略第2个方括号中的常量表达式;赋的初值不能多于事先定义好的数组元素个数。
    在选项D)赋值表达式中,对每一维的元素赋初值应用{},而不是()。

  • 第15题:

    在执行inta[][3]={{1,2},{3,4}};语句后,a[1][2]的值是()

    A.2

    B.4

    C.3

    D.0


    正确答案:D

  • 第16题:

    设有C语言变量说明“static int a[][2]={{1,2),(3,4}};int *pa,(*pb)[2];”,则执行语句“pa=pb=&

    设有C语言变量说明“static int a[][2]={{1,2),(3,4}};int *pa,(*pb)[2];”,则执行语句“pa=pb=&a[0][0];”后,(*(pa+1))的值为(31)。

    A.2

    B.3

    C.&a[0][1]

    D.&a[1][0]


    正确答案:A
    解析:对于语句“pa=pb=&a[0][0];”赋值后pb已经变为列指针,则pa也是列指针。在进行TC编译时,会出现“Warning:Suspiciouspointerconversioninfunctionmain”的提示信息,表明pb由行指针变为列指针。

  • 第17题:

    以下不能对二维数组arr进行正确初始化的语句是()

    A.int arr[2][3]={0}

    B.int arr[][3]={1,2,3,4,5}

    C.int arr[2][3]={{1,2},{3,4},{5,6}}

    D.int arr[2][3]={{1},{3,4,5}}


    参考答案:C

  • 第18题:

    若有定义语句:int m[][3]={1,2,3,4,5,6,7};,则与该语句等价的是

    A.int m[][3j={{1,2,3},{4,5,6},{i 7}};

    B.int m[][3]={{1,2},{3,4},{5,6,7}};

    C.int m[][3]={{1,2,3},{4,5},{6,7}};

    D.int nl[][3]={{1},{2,3,4},{5,6,7}};


    正确答案:A
    二维数组的初始化有两种方式,一种是分行初始化,方式为:数据类型数组名[行下标表达式][列下标表达式]={{第0行初值},{第1行初值表},…{最后l行初值表}};,如果初值表只对部分元素赋初值,没有被赋初值的元素将被自动赋值为0。另一种是按二维数组在内存中的排列顺序给各元素赋初值,这种方式就是不分行将所有数据依次列在一个花括号里,方式为:数据类型数组名[行下标表达式][列下标表达式]={初值表};,这种方式的赋值就是将初值表的数据依次赋予数组的每个元素,其中赋值是按照数组元素在内存中的位置进行的。题目中的初始化语句是第二种方法,如果用第一种方法应该是intm[][3]={{1,2,3},{4,5,6{,{7{};,这里应该保证除了最后一行,每一行都满列有3个元素,A选项正确。

  • 第19题:

    以下不能对二维数组arr进行正确初始化的语句是()

    • A、int arr[2][3]={0}
    • B、int arr[][3]={1,2,3,4,5}
    • C、int arr[2][3]={{1,2},{3,4},{5,6}}
    • D、int arr[2][3]={{1},{3,4,5}}

    正确答案:C

  • 第20题:

    假设已经使用了语句Dim a(3,5),下列下标变量中不允许使用的是()。

    • A、a(1,1)
    • B、a(2-1,2*2)
    • C、a(3,4)
    • D、a(-1,3)

    正确答案:D

  • 第21题:

    以下能对二维数组arr正确初始化的语句是()

    • A、inta[2][3]={0};
    • B、inta[][3]={{1,2},{0}};
    • C、inta[2][3]={{1,2},{3,4},{5,6}};
    • D、inta[][3]={1,2,3,4,5,6};

    正确答案:A,B,D

  • 第22题:

    单选题
    已知x=(0,1,2,3),那么执行语句x.add(4)之后,x的值为()
    A

    {1,2,3}

    B

    {1,2,3,4}

    C

    {1,2}

    D

    AttributeError


    正确答案: A
    解析: 暂无解析

  • 第23题:

    单选题
    以下不能对二维数组arr进行正确初始化的语句是()
    A

    int arr[2][3]={0}

    B

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

    C

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

    D

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


    正确答案: C
    解析: 暂无解析

  • 第24题:

    单选题
    以下定义数组的语句中错误的是(  )。
    A

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

    B

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

    C

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

    D

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


    正确答案: D
    解析:
    A项,赋值后下标自动取6;B项,赋值后下标取3行3列{{1,2,0},{3,4,0},{5,6,0}};C项错误,给2行4列的数组赋于3行4列的值;D项,赋值后下标取2行4列,等价于num[2][4] = {{1,2,3,4}, {5,6,0,0}}。答案选择C选项。