.二维数组a有m列,则在a[i][j]之前的元素个数为:.A) j*m+i B) i*m+j C) i*m+j-1 D)

zbrbgf2022-10-04 11:39:541条回答

.二维数组a有m列,则在a[i][j]之前的元素个数为:.A) j*m+i B) i*m+j C) i*m+j-1 D) i*m+j+1

已提交,审核后显示!提交回复

共1条回复
爱恨一瞬间 共回答了24个问题 | 采纳率87.5%
选B;
例如:a[4][5]这样的二维数组,列就是5,即m=5; 也就是每行有5个元素
a[i][j],i是指行,j指列,过了几行就是i*m,再加上本行上的列就是+j.
a[2][3] 就是2*5+3 = 第13个元素
1年前

相关推荐

若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为________.(假设a[0][0]位于数组的第1
若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为________.(假设a[0][0]位于数组的第1个位置上)
A、i*m+j B、j*m+i
C、i*m+j-1 D、i*m+j+1
sqrni1年前1
we1480 共回答了18个问题 | 采纳率88.9%
选d;你可以用数字测试.比如m=3,i=1,j=2时,恰好为6
二维数组A按行顺序存储,其中每个元素占2个存储单元。
二维数组A按行顺序存储,其中每个元素占2个存储单元。
若A[1][1]的存储地址为420,A[3][3]的存储地址为448,则A[5][5]的存储地址为:
A.470 B.472 C.474 D.476
选哪个呀
iamjulian1年前1
石999 共回答了14个问题 | 采纳率92.9%
显然A[5][5]的地址为476。方法1:可以看规律,A[3][3]比A[1][1]多了两行零两列,而A[5][5]比A[3][3]也是这样,所以448+(448-420)=476.方法2:直接求! 答案选:D
二维数组问题设有二维数组A(1..12,1..10),其每个元素占4个字节,数据按列优先顺序存储,第一个元素的存储地址为
二维数组问题
设有二维数组A(1..12,1..10),其每个元素占4个字节,数据按列优先顺序存储,第一个元素的存储地址为100.则元素A(5,5)的存储地址为
A)176 B)276 C)208 D)308
请将解题思路及步骤详细写出.
xsj6527748451年前1
小玉挺好 共回答了16个问题 | 采纳率87.5%
A) 176
A(5,5) 说明一维排在第5个,那么前面有4个已存储,二维也排在第5个,前面也有4个二维数据已存储
4* (10 * 4) + 4*4 = 176
数据结构关于二维数组的存储问题,求解答
数据结构关于二维数组的存储问题,求解答
二维数组A(1,-5),(10,20)以行为主序存储,且元素A.(I)(10)的存储地址是100,设每个元素占用2个存储单元,则元素A(3)(18)的地址是
A.160 B.162
C.182 D.184
myyoujia1年前1
人生有爱就有痛 共回答了16个问题 | 采纳率81.3%
A(1..5),(10..20)
A
1-5行,每行11个元素
中间有22+8个元素,每个占用2个单元所以地址是100+30*2=160
如果题干有问题请修正
我声明了一个二维数组 a[10][2]={{1,1},{2,2},{3,3},{4,4},{5,5},{6,6},{7,
我声明了一个二维数组 a[10][2]={{1,1},{2,2},{3,3},{4,4},{5,5},{6,6},{7,7},{8,8},{9,9},{10,10}};
我想要把{2,2}和{5,5}交换未知的话应该如何实现?我获取了a[1]和a[4]的地址存在b[]中,然后能用a[1]=b[4]这种方式改变位置么?我是小白,如果又代码的话最好.
推理游戏_毛利1年前0
共回答了个问题 | 采纳率
二维数组A[10..20][5..10]采用行序为主序存储,每个元素占4个存储单元,并且A[10][5]的存储地址是10
二维数组A[10..20][5..10]采用行序为主序存储,每个元素占4个存储单元,并且A[10][5]的存储地址是1000,则A[18][9]的地址是多少?
yangpingwoaini1年前1
自告奋勇 共回答了13个问题 | 采纳率100%
二维数组A中任一元素a(i,j) 的存储位置可以用以下公式,L为每个元素存储单元个数:
LOC(i,j) = LOC(0,0) + (i×n+j)×L
A[18][9]的地址为:
1000+[(18-10)×(10-5+1)+(9-5)]×4=1208
编写程序,计算下面4*4二维数组的两条对角线上的元素之和
编写程序,计算下面4*4二维数组的两条对角线上的元素之和
45 30 26 48
55 20 17 39
41 25 19 22
31 18 22 10
搞错区了,我想问VB
石陵1年前1
xiaochengdong 共回答了27个问题 | 采纳率96.3%
#include
int main()
{
int i,j,sum;
int angs[4][4];
printf("请输入矩阵:n");
sum = 0;
for(i = 0; i < 4; i++)
for(j = 0; j < 4; j++)
{
scanf("%d",&angs[i][j]);
if(i == j || i+j == 3)
sum += angs[i][j];
}
printf("%dn",sum);
return 0;
}
2.将一个N行、M列的二维数组a的行和列元素互换,存到另一个二维数组b中.N、M定义成符号常量,元素值随机
啊拉1年前1
gxj760998 共回答了18个问题 | 采纳率83.3%
#include
#include
#include
#define N 3
#define M 4
int main()
{
int i,j,a[N][M],b[M][N];
srand((unsigned)time(NULL));
for(i =0;i
c语言。给定一个5行5列的二维数组a[5][5],通过scanf函数给数组赋值,以矩阵的形式输出数组,并用函数调用实现下
c语言。给定一个5行5列的二维数组a[5][5],通过scanf函数给数组赋值,以矩阵的形式输出数组,并用函数调用实现下列算法:
(1)矩阵的转置(行列互换,存入到另一个数组中,并打印输出转置后的数组)
(2)求主对角线上各个数字的和,打印输出该结果
(3)打印输出矩阵a左下半的三角元素
(4)给定数组b[5][2],计算矩阵a和b的乘积,结果放入到c数组中,并将c以矩阵的形式输出c
菲笨笨1年前1
dd007 共回答了19个问题 | 采纳率89.5%
#include
int main()
{
int a[5][5],trans[5][5],b[5][2],c[5][2],sum=0,i,j,k,temp;
for(i=0;i<5;i++)//初始数组a[5][5]的录入
for(j=0;j<5;j++)
scanf("%d",&a[i][j]);
for(i=0;i<5;i++)//数组的转置
for(j=0;j<5;j++)
trans[j][i]=a[i][j];
printf("矩阵转置后:");
for(i=0;i<5;i++)//转置后的数组的输出
{
for(j=0;j<5;j++)
printf("%d ",trans[i][j]);
printf("");
}
printf("");
for(i=0;i<5;i++)//主对角线上各个数字之和
sum=sum+a[i][i];
printf("矩阵主对角线上的数字之和为:%d",sum);
printf("");
printf("打印输出矩阵a左下半的三角如下:");
for(i=0;i<5;i++)//打印输出矩阵a左下半的三角元素
{
for(j=0;j<=i;j++)
printf("%d ",a[i][j]);
printf("");
}
printf("输入新的数组b[5][2]: ");
for(i=0;i<5;i++)//录入数组b[5][2],同时对数组c初始化
{
for(j=0;j<2;j++)
{
scanf("%d",&b[i][j]);
c[i][j]=0;
}
}
for(i=0;i<5;i++)//矩阵相乘
{
for(j=0;j<2;j++)
{
temp=0;
for(k=0;k<5;k++)
temp+=a[i][k]*b[k][j];
c[i][j]=temp;
}
}
for(i=0;i<5;i++)//相乘后的矩阵的输出
{
for(j=0;j<2;j++)
printf("%d ",c[i][j]);
printf("");
}
return 0;
}幸不辱命!代码调试成功的。。
假定一个二维数组的定义为INT A[3][4]=【3,4】【2,8,6】,则元素A{2}{1}的值为
随心好了1年前1
一个良民 共回答了22个问题 | 采纳率90.9%
A[3][4]
3 4 0 0
2 8 6 0
0 0 0 0
所以A[2][1]=0
二维数组A[6][8]采用行序为主方式存储,每个元素占4个存储单元,已知A的起始存储地址(基地址)是1000,
二维数组A[6][8]采用行序为主方式存储,每个元素占4个存储单元,已知A的起始存储地址(基地址)是1000,
则A[2][3]的地址是多少?
拉一果丫1年前1
vlanping911 共回答了16个问题 | 采纳率87.5%
A[0][0]的地址是1000,则A[0][1]的地址是1004(以行序为主).A[0][7]的地址为:
1028;
A[1][0]为1032
可以推出,其地址为:1000+i*8*4+j*4
所以A[2][3]的地址为:1000+2*8*4+3*4 = 1078
C语言问题:对一个4×4的二维数组左下三角的全部元素(包含对角线上的元素)作如下变换: ⑴若该数
C语言问题:对一个4×4的二维数组左下三角的全部元素(包含对角线上的元素)作如下变换: ⑴若该数
C语言问题:对一个4×4的二维数组左下三角的全部元素(包含对角线上的元素)作如下变换:
⑴若该数是素数则用它的后继素数替换;
⑵ 若该数不是素数,则用0替换该数。
将变换后的数组及其数组左下三角的元素中的素数个数打印出来。
libiyun1年前1
Pindel 共回答了18个问题 | 采纳率94.4%
#include
int sushu(int x){
int i;
if (x
二维数组的等价问题*若有以下定义和赋值语句,则与&s[i][j]等价的是().int s[2][3]={0},(*p)[
二维数组的等价问题
*若有以下定义和赋值语句,则与&s[i][j]等价的是().
int s[2][3]={0},(*p)[3],i,j;
p=s; i=j=1;
A) *(*(p+i)+j)
B) *(p[i]+j)
C) *(p+i)+j
D) (*(p+i))[j ]
推窗望月10191年前1
shirlyangel 共回答了19个问题 | 采纳率89.5%
答案是C.
这题可以使用排除法,&s[i][j],是一个地址.而ABD都是一个int变量,只有C是地址.所以排除法可以很简单的知道答案.
满意请采纳!
(1)VB 用随机函数产生20个两位数的整数,存于4行5列的二维数组中,并求出其中的最大元素及它的行、列坐标,将数组按行
(1)VB 用随机函数产生20个两位数的整数,存于4行5列的二维数组中,并求出其中的最大元素及它的行、列坐标,将数组按行(矩阵形式)输出到窗体,最大元素及行、列下标输出在数组的下方.
(2)编一个将二进制数转换成十进制的函数TranBtoD(str$).将函数分别放在标准模块和窗体模块中,在窗体中编写调用程序,输入、输出结果分别使用文本框,程序界面自定.
(3)编写一个通用过程josc,功能是求1~50的偶数平方和与奇数平方和之差.
(4)利用函数过程,计算s=m!/(n!(m-m)!)的值
麻烦各位VB高手不吝赐教!
小_拇_指1年前1
法iiii 共回答了30个问题 | 采纳率93.3%
第一题:
Option base 1
Private Sub Form_Click()
Dim a(4,5) as integer ,i as integer ,j as integer ,s as integer
dim a_ave as single
randomize
for i=1 to 4
for j =1 to 5
a(i,j)=int(91*rnd+10)
print Format(a(i,j),"@@@@@@");
next j
print
next i
s=a(1,1)
For i=1 to 4
For j =1 to 5
if a (i,j)
求出二维数组a[ ][5]={34,3,25,75,48.45,234,32,421,1.33,23,32,43,53.
求出二维数组a[ ][5]={34,3,25,75,48.45,234,32,421,1.33,23,32,43,53.76,7,78,89,56.75,65,32,53,17
}每一行中的最小值和最大值并存入一个数组b中,b数组中每行有两个元素,第一个元素是最小值,第二个元素是最大值.
khar1年前2
海浪1998 共回答了21个问题 | 采纳率90.5%
#include
void get_max_min( float a[5] , float b[2] )
{
int i=0;
b[0]=b[1]=a[0];
for( i=1; i
VBA,定义一个二维数组arr(1 to 20,1 to y),求arr(k,1 to y)的平均数和标准差?
VBA,定义一个二维数组arr(1 to 20,1 to y),求arr(k,1 to y)的平均数和标准差?
For k = 1 To 20
avg(k) = Application.WorksheetFunction.Average(arr(k,1 to y))
std(k) = Application.WorksheetFunction.StDev(arr(k,1 to y))
'红色报错,请问average(),stdev()括号中怎么写?
Next k
gulingyuan1年前1
幸福的斑点狗 共回答了17个问题 | 采纳率94.1%
某个选定的Selection
求N个数的最小公倍数我是这样想的:以6 3 9为例,将它们放在二维数组中每行的首地址,然后让其中最小的数安如下规律扩大,
求N个数的最小公倍数
我是这样想的:以6 3 9为例,将它们放在二维数组中每行的首地址,然后让其中最小的数安如下规律扩大,请竖着看.
6 不变 12 不变 18 不变
3 6 9 12 15 18
9 不变 不变 18 不变 不变
也就是说让最小的数加上它的初值,这样求最小公倍数是就不用求最大公约数了,我编的程序如下,但是却陷入死循环,有看到的朋友请解释一下.
main()
{
int N,i,j,k,m=0,n=0,c=0,min;
long a[10][10];
for(N=0;;N++) /输入数据/
{
scanf("%ld",a[N][0]); /存入首地址/
if(a[N][0]==0) /以0结束输入/
break;
}
min=a[0][0];
for(j=0;;j++)
{
for(i=0;ia[i][j])
{
min=a[i][j];
m=i; /标记最小值坐标/
n=j;
}
for(k=0;k
重歼2651年前1
笨笨兜 共回答了24个问题 | 采纳率87.5%
你这程序最大问题貌似是这样的:
当前最小数是不唯一的,而你的保存下标只能保存一组下标.
再说个大问题,数组个数问题,开N,N的数组显然不够,比如说2和10001最小公倍数是20002,这个2要加10001次,这数组就上万了,再多加两个数3和5,这四个数的最小公倍数就是300030了,这个2就要加150015次了,这数组就得开15万,再加几个数呢……太恐怖了.
当然这可以用链表解决,但是时间效率上就成问题了……
其实你想过没,中间结果是没有必要保存,只与最近一次结果,因此数组实际有用的只有两位,第一位保存原数,第二位保存加到当前的结果,
按以上思路大概写了段程序如下:
经测试应该是没什么问题的,只要你的输入数据保证最小公倍数在long的范围之内.
#include
#define N 10//允许输入数据的最大个数
void main()
{
bool flag;//标记算法是否已经结束
int total,i,min;//分别为输入数据的个数,循环变量,当前最小值
long a[N][2];

total=0;
do
{
scanf("%ld",&a[total][0]);
a[total][1]=a[total][0];
total++;
}while(a[total-1][0]!=0&&total
关于二维数组的问题 a[1]与&a[1]等价,但a[1]为什么与&a[1][0]也等价. 我的理解
关于二维数组的问题 a[1]与&a[1]等价,但a[1]为什么与&a[1][0]也等价. 我的理解
关于二维数组的问题
a[1]与&a[1]等价,但a[1]为什么与&a[1][0]也等价.
我的理解是:a[1]是指一行的地址,但&a[1][0是指一个元素的地址,两者应该不等价啊?
求解……
旦旦皮1年前1
会画画的小孩 共回答了18个问题 | 采纳率88.9%
a[1]与&a[1]不等价哦,二者仅仅是数值上相等,但含义不同
比如有int a[3][4]; &a[1]是行指针,类型是int(*)[4],和a的类型相同,而a[1]是个int*
a[1]与&a[1][0]是等价的,二者类型和数值都相同
已知A为二维数组,A[-1 2,-2 3],按顺序存储,若每个元素都占用两个存储单元,计算元素A(-1,-1)按行优先存
已知A为二维数组,A[-1 2,-2 3],按顺序存储,若每个元素都占用两个存储单元,计算元素A(-1,-1)按行优先存
储的相对地址号.
计算元素A(-1,-1)按行优先存储的相对地址号.
阿杰9991年前1
Scofield_Chen 共回答了17个问题 | 采纳率88.2%
已知:c1=-1; c2=-2; d2=3; L=2; i=j=-1.
相对地址=[(d2-c2+1)(i-c1)+(j-c2)]xL
=[(3+2+1)(-1+1)+(-1+2)]x2
=1x2
=2
若二维数组定义为a[m][n],则在a[i][j]之前的元素个数为(
若二维数组定义为a[m][n],则在a[i][j]之前的元素个数为(
答案不是i*n+j..
dylove1年前1
酸奶小米 共回答了24个问题 | 采纳率100%
答案应当是 i*n+j
例如 a[0][0];
在它之前 有 0 个元素

除非 i,j 超出 定义范围, i>=m, j>=n, 或为 负.那就不能是填空题了.
『数据结构』 二维数组 1.设二维数组A[0…m-1][0…n-1]按行优先顺序存储在内存中,第一个元素的地址为p,每个
『数据结构』 二维数组
1.设二维数组A[0…m-1][0…n-1]按行优先顺序存储在内存中,第一个元素的地址为p,每个元素占k个字节,则元素aij的地址为( ).
A.p +[i*n+j-1]*k B.p+[(i-1)*n+j-1]*k
C.p+[(j-1)*n+i-1]*k D.p+[j*n+i-1]*k
为什么 跟据C语言中,应有这个公式LOC(Aij)=Loc(A00)+(in+j)L n为列数 L为每个元素占据地址单元
可这里为什么选A呢 j要减一个1
另外又有一题
2.已知二维数组A10×10中,元素a20的地址为560,每个元素占4个字节,则元素a10的地址为( ).
A.520 B.522 C.524 D.518
这又是按照那个公式算的啊?按照那个公式算任然得不到A的答案啊!
只身梦魇1年前1
什么什么枫林晚 共回答了20个问题 | 采纳率90%
不要死套公式,这种二维数组在内存中的存放实际上就是按照一维数组进行的.
计算机在寻址的时候,对于m*n的二维数组A
的元素A[i][j],如果是行优先存储,会翻译成A[i*n+j]去寻找,也就是你提到的公式,如果是列优先,比如matlab这种,就会翻成A[j*m+i]的形式.
因此第一题选A是错误的,第一个元素即A[0][0],设i=0,j=0,那么ABCD四个答案都不能得到p,所以这题出错了,正确答案应为p+(i*n+j)*k
第二题,a[2][0]是第三行第一个元素,a[1][0]是第二行第一个元素,两者相差10个元素,因此地址为560-10*4=520.选A是正确的.
二维数组如何用指针表示int b[2][5]用下标方法表示如下int b[i][j]假设i = 0; j = 0,1,2
二维数组如何用指针表示
int b[2][5]
用下标方法表示如下
int b[i][j]
假设i = 0; j = 0,1,2,3,4;
用指针方法表示
* (* (b+i)+j) 演变 * (b[i]+j) 演变 (* (b+i) ) [j]
//为什么要加2个*号,请懂的朋友解释下
和ll神拥抱1年前1
xinshidaijane 共回答了28个问题 | 采纳率89.3%
二维数组可以看成是指针的指针,b[][] = **b;
比如b[2][5];
它是一个2行5列的二维数组,也可以看成是二级指针,一级存放的是行指针,然后每个行指针里面其实又是指向了5个列元素.
*(*(b+i)+j),*(b+i)是先取行指针,然后+j偏移到所要的列,然后*取值就得到i行j列的数据了.
1:编写一个过程(函数或子程序),求任意二维数组中最大和最小两个元素的平方根之和.通过调用该过程计算并输出PA*PB的值
1:编写一个过程(函数或子程序),求任意二维数组中最大和最小两个元素的平方根之和.通过调用该过程计算并输出PA*PB的值(保留5位小数);其中PA为数组A中最大和最小两个元素的平方根的和,PB为数组B中最大和最小两个元素的平方根的和.两个数组的数据分别如下:
数组A:
11,33,56,67
45,43,54,69
96,73,68,79
25,45,86,91
数组B:
23,45,56
34,74,85
56,98,56
98,54,83
33,87,74
13,66,53
dxq13568221年前1
秦川流芳 共回答了25个问题 | 采纳率100%
#include "stdio.h"
#include "math.h"
double GetP(int *p,int m,int n)
{
int max = *p;
int min = *p;
int i,j;
double pp;
for(i=0;i
VB随机产生一个M×N二维数组(M,N缺省为4,数组元素为100以内的正整数),计算其
VB随机产生一个M×N二维数组(M,N缺省为4,数组元素为100以内的正整数),计算其
随机产生一个M×N二维数组(M,N缺省为4,数组元素为100以内的正整数),计算其所有元素中0-9出现的次数.
Forever_kk1年前1
小妖妖精 共回答了23个问题 | 采纳率95.7%
一下代码!你参考一下!
Private Sub Command1_Click()
Cls
Dim a() As Integer '定义一个动态数组
Dim b(10) As Integer '用于统计
Randomize
n = 4:m = 4
ReDim a(m,n) '重定义数组
For i = 1 To m
For j = 1 To n
a(i,j) = Rnd * 100 '赋值
Print a(i,j);
Next
Print
Next
For i = 1 To m
For j = 1 To n
For t = 0 To 9 '数组元素中查找0~9的数字
If a(i,j) = t Then b(t) = b(t) + 1
Next
Next
Next
For i = 0 To 9
Print m; "*"; n; "的数组中"; i; "出现"; b(i); "次"
Next
End Su
在VB中求二维数组大小时,需要各维大小的乘积,那么要怎样求每一维的大小呢?如数组Dim a (4,-1 to2,3)谢
风云91年前1
lenny3 共回答了25个问题 | 采纳率96%
通常情况下数组的下标是从0开始的,如:一维数组a(5)则有6个可操作的数组变量即a(0)~a(5)
二维数组a(5,5)则有6×6共36个,即a(0,0)~a(0,5),a(1,0)~a(1,5),.a(5,0)~a(5,5)
三维数组a(5,5,5)则有6×6×6个.
你提出的a(4,-1 to 2,3)则有:5×4×4个变量.
在N行M列的二维数组中,找出一组中元素的最大值以及此最大值所在行列下标
hw88481年前1
summerperfume 共回答了22个问题 | 采纳率86.4%
#include
#define N 3
#define M 5
void main()
{
int i,j,max,maxi,maxj,a[N][M]={0};
for(i=0;i
求解labview大神,通过循环改变了一个二维数组的最后一个数,但怎么同时来控制一个变量加1
求解labview大神,通过循环改变了一个二维数组的最后一个数,但怎么同时来控制一个变量加1

如图 例:通过while循环将最后一个数12变成13 ,同时变量2变成3 (循环之后数组的维数不变,只改变最后一个数)。


必须用while循环
丁丁独自过街1年前1
6psefw 共回答了17个问题 | 采纳率88.2%
不必透过WHILE来操作数组的,可以直接取得数组的资讯,直接索引去改变它。
怎么求数组地址?若二维数组arr[1..M,1..N】的首地址为base,数组元素按列存储且每个元素占用K个存储单元,则
怎么求数组地址?
若二维数组arr[1..M,1..N】的首地址为base,数组元素按列存储且每个元素占用K个存储单元,则元素arr[i,j]在该数组空间的地址为 (21)。(21) A. base+((i-1)*M+j-1)*K B.base+((i-1)*N+j-1)*KC.base+((j-1)*M+i-1)*K D.base+((j-1)*N+i-1)*K
为什么选C?
hdcwlqz1年前1
痴心娃娃 共回答了19个问题 | 采纳率89.5%
楼主你好
抓住题目的关键信息:数组元素按列存储
说明数组的存储方式是按列的 就是说:列优先与行
二维数组arr[1..M,1..N】的首地址为base
--> &arr[1,1]=base
--> 一列由M个元素
--> arr[i,j]位于第j列 的 第i个元素
--> &arr[i,j]=(j-1)*M + i-1
希望能帮助你哈
将一个二维数组进行逆序,逆序后所有的元素行列不定,进行随机排列 java题 我没明白啥意思
xiaozhu8410171年前1
aaaa5151 共回答了25个问题 | 采纳率92%
这个题就是两步呗
1、先把数组逆序排列
2、再进行随机排列
二维数组a[4][5][6](下标从0开始计,a有4*5*6个元素),每个元素的长度是2,则a[
pomipopo1年前1
寻梦想飞 共回答了12个问题 | 采纳率83.3%
二维数组a[4][5][6](下标从0开始计,a有4*5*6个元素),每个元素的长度是2,则a[2][3][4]的地址是____.(设a[0][0][0]的地址是1000,数据以行为主方式存储),我刚好做到这道题目,一开始不会.你就想象一下一个魔方,从最底下第0层,第一层都放慢了,那就是2×5×6个元素;这时,剩[3][4]的元素个数没有计算,那就是放慢了三行(0、1、2),共3×6个元素;这时有5个元素了,把这三个数加起来,
loc=1000+(18+60+5-1)×2=1164
建立一个4x4的二维数组矩阵,初始化,找出四个最小值,并把它们按升序排列在主对角线上.找一个比较简单的
建立一个4x4的二维数组矩阵,初始化,找出四个最小值,并把它们按升序排列在主对角线上.找一个比较简单的
找一个比较简单的方法
思捷相宜1年前0
共回答了个问题 | 采纳率
在二维数组a[3][4]中 a==&a[0]==&(&a[0][0]) 这句话正确吗?
蓝天下飞翔1年前1
yellow4587 共回答了21个问题 | 采纳率90.5%
a==&a[0]==&(&a[0][0]) 是错误的
a和&a[0]虽然指向的地址是一样的.
&(&a[0][0])根本就是个错误的表达式
对下列二维数组c的声明正确的是 A.int c[3][]; B.int c(3,4); C.int c(2)(2); D
对下列二维数组c的声明正确的是 A.int c[3][]; B.int c(3,4); C.int c(2)(2); D.int c[3][2];
air00991年前1
frances_hm 共回答了22个问题 | 采纳率86.4%
D A 若是二维数组第二维就必须说明第二维长度;B 数组必须用[]声明或定义;C 同上
随机数生成25个正整数,组成一个5*5的二维数组,然后找出最大元素及最大元数素所在的位置,并按A(n1,n2)二×的形式
随机数生成25个正整数,组成一个5*5的二维数组,然后找出最大元素及最大元数素所在的位置,并按A(n1,n2)二×的形式输出.
ilovemi1年前1
友mm 共回答了21个问题 | 采纳率95.2%
Option Explicit
Private WithEvents Command1 As CommandButton
Private Sub Form_Load()
Set Command1 = Controls.Add("vb.CommandButton", "Command1")
With Command1
.Visible = True
.Caption = "运行"
.Left = 100
.Top = 100
End With
With Me
.Width = 9000
.Height = 5000
.BorderStyle = 1
End With
End Sub
Private Sub Command1_Click()
Dim n1 As Byte, n2 As Byte
Dim A(5, 5) As Integer
Dim Max As Integer '记录最大值
Dim X As Byte, Y As Byte '记录最大值坐标
Cls
Me.CurrentX = 0
Me.CurrentY = 800
'自动生成25个区间在[100,999]的三位数
Randomize
For n1 = 1 To 5
For n2 = 1 To 5
A(n1, n2) = 900 * Rnd + 100
If A(n1, n2) > Max Then Max = A(n1, n2): X = n1: Y = n2
Print "A("; n1; ","; n2; ")="; A(n1, n2); Space(2);
Next n2
Print
Next n1
Print
Print "最大元数=" & Max, "所在坐标=" & "(" & X & "," & Y & ")"
End Su
对二维数组作如下初始化:int a[3][3]={{1,2},{3},{4,5}};则a[2][1]的值为 A.0 B.
对二维数组作如下初始化:int a[3][3]={{1,2},{3},{4,5}};则a[2][1]的值为 A.0 B.5 C.3 D.不能确定
mhapple521年前1
拾露 共回答了16个问题 | 采纳率93.8%
B
产生20个【30,120】的数放入二维数组a【5】【4】中,求出每行元素的和
产生20个【30,120】的数放入二维数组a【5】【4】中,求出每行元素的和
用函数解决
落泪的鱼1年前1
lostch 共回答了21个问题 | 采纳率95.2%
void main()
{
int a[5][4],i,j;
int sum=0;
for(i=0;i
求你出几个题 给我做 :我学了 Do Loop函数 for 函数 二维数组 inputbox msgbox 算术运算关系
求你出几个题 给我做 :我学了 Do Loop函数 for 函数 二维数组 inputbox msgbox 算术运算关系运算逻辑运算
出几个 比较难的排序题 最好是能综合我 所学的东西的.题目尽量新颖 且 不少于3个
guangjr1年前1
gravestone 共回答了24个问题 | 采纳率91.7%
1.生成大小为1到100的50个随机数,使用选择排序或者冒泡法对这些数组从小到大排序,并将其显示出来.
2.计算S=1+1/2+1/4+1/7+.,当i项的值
VB,随机生成16个在[200,300]区间的正整数,构成4×4的二维数组,再分别求和、平均.
沙子虫1年前1
东方大兵 共回答了18个问题 | 采纳率83.3%
s=0
for i=0 to 3
for j=0 to 3
a(i,j)=200+INT(RND(1)*100+0.5)
s=s+a(i,j)
next j
next i
average=s/16
随机生成25个在[240,325]区间的正整数,构成5×5的二维数组.求小于300数的和、平均.
ynyq1年前1
京城名没 共回答了17个问题 | 采纳率88.2%
Private Sub Form_Click()
Cls
Dim Data(0 To 4,0 To 4) As Integer
Dim Sum!,Aver!,I%,J%
N = 0:Sum = 0
Randomize
For I = 0 To 4
For J = 0 To 4
Data(I,J) = Int(Rnd * 86 + 240)
Sum = Sum + Data(I,J)
CurrentX = I * 400
CurrentY = J * 200
Print Data(I,J)
Next J
Print
Next I
Aver = Sum / 16
Print "平均值是"; Aver
Print "总和为"; Sum
End Su
写一个程序,统计3行4列的整数二维数组中有多少个奇数、多少个偶数,多少个零
写一个程序,统计3行4列的整数二维数组中有多少个奇数、多少个偶数,多少个零
(假设0既不是奇数也不是偶数),并返回统计结果.
见了抢匪就砍1年前1
蕃火 共回答了18个问题 | 采纳率100%
没有说明用什么语言写啊!拿手的.
void Count(int *count,int s[])
{
int conut[3];
int i,j;
for(i = 0;i
设计一个3×3的二维数组,同时使用一个指针指向该数组的首单元,试观察在指针的移动过程中,
设计一个3×3的二维数组,同时使用一个指针指向该数组的首单元,试观察在指针的移动过程中,
数组第二维的变化规律是什么?由此能否使用一个计算表达来代替二位数组的访问.
梦子柯1年前1
MU小西 共回答了18个问题 | 采纳率94.4%
#include
void main()
{
int a[3][3]={{1,2,2};{2,2,3};{4,5,6}};
int*p=a[0];
for(i=0;i
C#二维数组的定义写法书上说可以写成;例:a[3,4]; 而在TC上输入时貌似一定要输:a[3][4],不可以写成a[3
C#二维数组的定义写法
书上说可以写成;例:
a[3,4];
而在TC上输入时貌似一定要输:a[3][4],
不可以写成a[3,4]这样的吗!
尾巴鱼1年前1
篮球是什么 共回答了20个问题 | 采纳率90%
string[,] fn = new string[12, 6];
fn[0, 0] = "string 0-0";
fn[0, 1] = "string 0-1";
...
fn[11, 5]= "string 11-5"
是这样写的
如何旋转坐标?我的是一个二维数组,存放xy坐标,如何将y值变换一下,就相当于把坐标系旋转45度,需要计算出新的y值!
客定指1年前1
建亚 共回答了24个问题 | 采纳率95.8%
这是俺以前写机器人足球转坐标系的代码,这个函数可以把坐标系转180度
void turn(double &x,double &y)//传入原始坐标
{
x=right_top_x + left_bottom_x - x; //右上角X + 左下角X- 原始X
y=left_bottom_y + right_top_y - y;//左下角Y+右上角Y - 原始Y
}
这个其实就是一个数学问题,楼主可以现在纸上画出来,想出算法,再转成相应的程序
在二维数组a中,元素a[0][1]的地址可表示为____________.
在二维数组a中,元素a[0][1]的地址可表示为____________.
A. *(*(a+0)+1) B. *(a+1)
C. &a D.*(a+0)+1
求详细解释,特别是A选项?
jydcx1年前1
robinniu 共回答了19个问题 | 采纳率89.5%
选A
*(a+0)得到第一维的首地址
*(a+0)+1是第一维的第二个元素的地址
*(*(a+0)+1)就是a[0][1]的值
求二维数组最大值最小值所在位置2.定义一个二维数组\x05int[][] arra = {\x05\x05{1 ,3 ,
求二维数组最大值最小值所在位置
2.定义一个二维数组
x05int[][] arra = {
x05x05{1 ,3 ,479 ,10 ,20},
x05x05{2 ,3 ,95 ,7 ,11},
x05x05{7 ,9 ,300 ,10 ,21},
x05x05{89 ,89 ,79 ,68 ,10}x05
x05}x05
x05找出行中最大,列中最下的数,并列出行,列相对应的下标
(optional)
3.给定一个字符串如下:
x05abcde***人民热爱programmer呵呵努力学习振兴中华playbasshiyoussayhello
x05查找出出现频率最高的字符(有可能多个字符出现频率一样高)
x05
4.定义一个一维数组
x05int[] arra = {1,4,7,3,2,10,22,98,-3,0}
x05int step = 2;//步长x05
x05完成打印数组中所有的元素,从下标0开始,每隔step个元素打印.直至所有元素被打印完毕.
独唯拉1年前1
接龙653 共回答了13个问题 | 采纳率100%
用Matlab!
可以调用 fmincon函数.
具体代码如下.
function y = fmin(x )
x11=x(1);x12=x(2);x13=x(3);y1=x(4);x21=x(5);x22=x(6);x23=x(7);y2=x(8);x31=x(9);x32=x(10);x33=x(11);y3=x(12);
y=1.5.*x11+0.7.*x12+1.6.*x13+0.85.*y1+0.8.*x21+1.5.*x22+2.2.*x23+1.00.*y2+1.2.*x31+2.3.*x32+1.1.*x33+0.90.*y3;
end %创建最小值函数
function [c ceq] = mycon( x )
c=0;
ceq(1)=x(4).*(x(4)-1);
ceq(2)=x(8).*(x(8)-1);
ceq(3)=x(12).*(x(12)-1);
end %创建非线性约束条件函数.
>> A=[1 1 1 -1.7 0 0 0 0 0 0 0 0;0 0 0 0 1 1 1 -2.9 0 0 0 0;0 0 0 0 0 0 0 0 1 1 1 -2.1;-1 -1 -1 0 0 0 0 0 0 0 0 0;0 0 0 0 -1 -1 -1 0 0 0 0 0;0 0 0 0 0 0 0 0 -1 -1 -1 0];
b=[0;0;0;-1.2;-0.8;-1.5]
>> lb=zeros(1,12);
>> x0=zeros(1,12);
>> fmincon('fmin',x0,A,b,[],[],lb)
结果如下.ans =
0.2056 0.2056 0.2056 0 0.0722 0.0722 0.0722 0 0.3056
0.3056 0.3056 0
顺序是 x11,x12,x13,y1,x21,x22, .y3
>> fmin(ans)
ans =
2.5119
可能有点晚了.不过还是希望能够帮助你.
若满意请采纳! ^.^
二维数组元素个数的算法定义可二维数组A(2 to 5,5),则该数组的元素个数为()请问是这么算的?
changjiang07251年前2
361810341 共回答了22个问题 | 采纳率77.3%
例如a(m,n) 的个数是m*n个元素 ,不过我不知道2to5 是几 ,不好意思了 。
没有二维数组A(6*8),每个元素占6个字节储存,实现存放,A00的其始地址为1000,计算?
没有二维数组A(6*8),每个元素占6个字节储存,实现存放,A00的其始地址为1000,计算?
数组的最后一个元素A57的起始地址
三月断心脉1年前1
2001107 共回答了12个问题 | 采纳率91.7%
1000 + 6*8*6-6 = 1000 + 282 = 1282
c#编写程序,统计5行4列二维数组中奇数的个数和偶数的个数.
c#编写程序,统计5行4列二维数组中奇数的个数和偶数的个数.
第一行:x051x052x053x054
第二行:x056x057x058x059
第三行:11x0512x0513x0514
第四行:x0516x0517x0518x0519
第五行:x053x0556x0524x051
acecyclone1年前1
hzq0621 共回答了18个问题 | 采纳率94.4%
private void button1_Click(object sender, EventArgs e)
{
int[,] a = { { 1, 2, 3, 4 }, { 6, 7, 8, 9 }, { 10, 11, 12, 13 }, { 14, 15, 16, 17 }, { 3, 56, 24, 1 } };
int i ,j = 0;
int js=0,os=0;
for (i = 0; i < 5; i++)
{
for (j = 0; j < 4; j++)
{
if (a[i, j] % 2 == 0)
os++;
else js++;
}
}
textBox1.Text = "偶数个数为"+os.ToString()+"奇数个数为"+js.ToString();
}
fortran 二维数组编程题…急!
fortran 二维数组编程题…急!
一只虫子,在直角坐标系以(1,1)为第一步,移动一个坐标算一步,按照逆时针正方形顺序走向中心,如(2,1)为第二步,一直走到(1,100),再走到(100,100),再走到(1,100),再向下走到(1,2),再向右拐走到(2,2)…就这样逆时针旋转着走到中心,问在键盘输入步数,求小虫这时候坐标…
Jade_happy3121年前1
iron_buddha 共回答了16个问题 | 采纳率81.3%
#include
void main()
{
int XY[102][102];
int step[4][2] = {{1,0},{0,1},{-1,0},{0,-1}};//走动的方向
int x,y;
for(y=0;y