请问大佬如何获取一个二维数组中某个元素的具体个数

请问大佬如何获取一个二维数组中某个元素的具体个数,第1张

//假设你给的是一个a[3][5]的数组,要求寻找的数字为num,则程序如下。

#include<stdioh>

void main(){

int a[3][5]={{1,2,3,4,5},{1,2,3,4,5},{1,4,2,5,6}};//这个您可以自己修改

int num=5;//这个就是要找的数字了。

int count=0,i,j;

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

{

for(j=0;j<5;j++){

if(a[i][j]==num) count++;

}

}

printf("这个二位数组里面一共有%d个%d\n",count,num);

}

通过数组的length属性获取

示例:

String[] arr = {"1","2"};//定义一个数

int len = arrlength;//获取数组长度,这里获取到的长度是2

数组中的元素个数length是数组类中唯一的数据成员变量。使用new创建数组时系统自动给length赋值。数组一旦创建完毕数组大小就固定下来。

用循环么

for(i=0;input [i]!='\0';i++ ){}

//一个空循环,循环到数组结尾跳出循环

printf("%d",i);

//输出的i就是数组元素个数

int data[30];

data[30]={0,1,2,1,3,1,0,0,0};

这种写法错误!data[30]= 这只是给数组的第31个元素赋值。

但我知道你的意思。你可以先给数组赋一个你后面的程序正常情况下不会出现的值。

如:

int data[30];

memset(data, -65535, 30);// 这里-65535得是后来的正常值中不会出现的。

//给数组添加正常值

。。。

//计算数组中实际元素个数

int count = 0;

while(data[count] != -65535) count++;

//实行完上面的代码,count里的值就是实际元素的个数了。

那要看你数组是怎么定义的:

如果是这样: int A[]={1,2,3,4,5,6};

这个时候没显式的定义A的大小,A的大小决定于后面数的个数,所以就有数组恰好装满,这个时候就可以用sizeof(A)/sizeof(A[0])来获取数组大小

如果是这样 int A[10]={1,2,3,4,5,6};

这个时候数组容量不等于数组大小,从A[6]以后的全为0所以有:

for(i=0;a[i];i++) 通过i的值来获取数组大小

补充:<纠正下楼>

未装满的数组,只要是你装了1个以上

就是比如这样: int a[10]={1};<初始化的>系统会默认的把a[1]-a[9]都初始化为0<那怕为复杂的结构体也是一样,每一项都为0或者指针的NULL>

当然定义这样的:int a[10];<没初始化的>,系统不会,这个时候你就要人为的给每个赋值,这个时候,数组个数就更好确定了

有一个函数就是为了获取数组元素个数的:sizeof!

原理是:sizeof获取数组的长度然后除以数据类型所占的长度得到元素个数

我简单写下代码:

int a[100]={1,2,3,4}; int len=sizeof(a)/sizeof(int); printf("%d\n",len);

以上为原来的回答,有错误:

在给定数组大小时候sizeof这个方法就不起作用了,我当时没注意犯了错误有些误人子弟了

原谅我一年以后才来修改这个答案~

我想了想int数组默认全是0称为初始化,姑且说非0为有效元素

while(i<100)

{

if(a[i]!=0)

count++;

i++;

}

遍历,记录

字符数组有结束符,只要找到结束符的位置就可以了

以上就是关于请问大佬如何获取一个二维数组中某个元素的具体个数全部的内容,包括:请问大佬如何获取一个二维数组中某个元素的具体个数、java中如何获取字符串数组的个数、如何获取String数组元素个数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/10149174.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存