更多"以下能正确定义二维数组的是( )。"的相关试题:
[单项选择]以下不能正确定义二维数组的选项是()
A. int a[2][2]={{1},{2}};
B. int a[ ][2]={1,2,3,4};
C. int a[2][2]={{1},2,3};
D. int a[2][ ]={{1,2},{3,4}};
[单项选择]定义了二维数组A(2 to 5,5),该数组的元素个数为( )。 (2004年9月)
A. 20
B. 24
C. 25
D. 36
[判断题]在Excel中,数组常量可以分为一维数组和二维数组。
A.正确
B.错误
[单项选择]假设使用DIMENSION y(2,3)定义了一个二维数组y,正确的赋值语句是( )。
A. y[7]=10
B. y=10
C. STORE 10 y[3],y[4],y[5]
D. y[2],y[3],y[4]=10
[单项选择]以下定义数组或给数组元素赋值的语句中,正确的是
A. Dim a As Variant
B. Dim a (10) As Integer
C. Dim a%(10)
D. Dim a (3),b(3) As Integer
[简答题]下列程序定义了M×M的二维数组,并在主函数中自动赋值。请编写函数fun(int arr[][M]),该函数的功能是使数组左下半三角元素中的值全部置成0。例如,arr数组中的值为:
1 2 3
arr=4 5 6
7 8 9
则返回主程序后arr数组中的值应为:
0 2 3
arr=0 0 6
0 0 0
注意:部分源程序给出如下。
请勿改动main( )函数和其他函数中的任何内容,仅在函数proc( )的花括号中填入所编写的若干语句。
试题程序:
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#define M 5
void proc(int arr[][M])
{
}
void main( )
{
int arr[M][M],i,j;
system("CLS");
printf("****The array****/n");
stand((unsigned)time(NULL));
for(i=0;i<M;i++)
//产生一个随机的5*5矩阵
{
for(j=0;j<M;j++)
{
arr[i][j]=rand( )%10;
printf("%4d",arr[i][j]);
}
printf("/n");
}
proc(arr);
printf("THE RESULT/n");
for(i=0;i<M;i++)
{
for(j=0;j<M;j++)
printf("%4d",arr[i][j]);
printf("/n");
}
}
[单项选择]下列二维数组初始化语句中,不正确的是 。
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)};
[单项选择]若二维数组arr[1..M,1..N]的首地址为base,数组元素按列存储且每个元素占用K个存储单元,则元素arr[i,j]在该数组空间的地址为()。
A. base+((i-1)*M+j-1)*K
B. base+((i-l)*N+j-1)*K
C. base+((j-1)*M+i-1)*K
D. base+(j-1)*N+i-1)*K
[简答题]请编写函数fun, 函数的功能是: 将M行N列的二维数组中的数据,按行的顺序依次放到一维数组中, 一维数组中数据的个数存放在形参n所指的存储单元中。
例如, 二维数组中的数据为:
33 33 33 33
44 44 44 44
55 55 55 55
则一维数组中的内容应是:
33 33 33 33 44 44 44 44 55 55 55 55。
注意:部分源程序在文件PROG1.C中。请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
给定源程序:
#include
void fun(int (*s)[10], int *b, int *n, int mm, int nn)
{
}
main( )
{ int w[10][10] = {{33,33,33,33},{44,44,44,44},{55,55,55,55}},i,j ;
int a[100] = {0}, n = 0 ;
printf("The matrix:/n") ;
for(i = 0 ; i < 3 ; i++)
{ for(j = 0 ; j < 4 ; j++) printf("=",w[i][j]) ;
printf("/n") ;
}
fun(w, a, &n, 3, 4) ;
printf("The A array:/n") ;
for(i = 0 ; i < n ; i++) printf("=",a[i]);printf("/n/n") ;
NONO( ) ;
}
[单项选择]若二维数组a有m列,则计算任一元素a[i][j]在数组中相对位置的公式为(假设 a[0] [0]位于数组的第一个位置上) ( )。
A. i*m+j
B. j*m+I
C. i*m+j-1
D. i*m+j+1
[单项选择]若二维数组a有m列,则在a[i][j]前的元素个数为( )。
A. i*m+j-1
B. i*m+j
C. j*m+i
D. i*m+j+1
[简答题]二维数组是一种非线性结构,其中的每一个元素最多有【 】个直接前驱(或直接后继)。
[单项选择]以下有关数组定义的语句序列中,错误的是
A. Static arrl(3)
B. Dim arr2()As Integer
C. Option Base 1
D. Dim n As Integer