您的位置:

c语言如何获取数组中的数字,c语言如何取数组中的值

本文目录一览:

c语言如何取数组元素个数?

1、C语言中,定义数组后可以用sizeof命令获得数组的长度(即可容纳元素个数)。但是通过传递数组名参数到子函数中,以获得数组长度是不可行的,因为在子函数当中,数组名会退化为一个指针。

2、例如:

int data[4],length;

length=sizeof(data)/sizeof(data[0]);  //数组占内存总空间除以单个元素占内存空间大小,即等于元素个数

printf("length of data[4]=%d", length ); //输出length of data[4]=4

C语言中如何随机选取数组中的数字(程序代码请写出)?

应该是a[2][3]={{1,3,2},{8,0,3}} 吧

#include iostream //cout函数的头文件

#include cstdlib

#include time.h /* srand函数与rand函数的头文件*/

using namespace std;

int main()

{

int a[2][3]={{1,3,2},{8,0,3}},x,y,z;

srand ( (unsigned) time (NULL) );

x=rand()%2; //调用随机函数

y=rand()%3; //调用随机函数

z=a[x][y];

coutz"\n";

system ("pause");

return 0;

}

三楼,请注意素质...

那是我的版权!!

楼主,一定要注意先来后到!

我本是2楼的,后因稍作修改,没想到3楼抄袭我。。。

在c语言中怎样从数组中取出一个数

在c语言中,无法直接返回一个数组,但是可以通过返回对应类型指针的方式,返回数组。

在大多数情况下,一维数组和一维指针是可以通用的。

比如,定义一个函数,申请一定长度的整型动态数组,其长度用参数传入,并将结果返回。如出错,返回空指针null。

代码可以写成如下形式:

int *int_array_create(int n)//参数n为数组元素个数

{

int *r;

if(n=0) return null;//参数错误

r = (int *)malloc(sizeof(int)*n);//申请内存空间,大小为n个int长度。

return r;//返回得到的整型数组的指针。

}

C语言查找数组中的数据

#define IntSize sizeof(int)

#define StructSize sizeof(struct tagresult)

#includestdio.h

#includestdlib.h

#includestring.h

typedef int *ptint;

typedef struct tagresult

{

int v;

char bl;

}*ptresult;

int lessthan(const void *v1,const void *v2)

{

int i1=*((ptint)v1),i2=*((ptint)v2);

if(i1==i2)

return 0;

else if(i1i2)

return 1;

else

return -1;

}

int main()

{

int c,n,capacity=128,rlen=0,dlen;

ptint data=(ptint)calloc(capacity,IntSize);

ptresult result;

scanf("%d",n);

result=(ptresult)calloc(n,StructSize);

memset(result,0,n*StructSize);

while(n--0)

{

scanf("%d",c);

dlen=0;

for(;c0;c--)

{

if(dlen+1=capacity)

{

capacity*=2;

data=(ptint)realloc(data,capacity);

}

scanf("%d",data+dlen++);

}

scanf("%d",c);

//直接调用库函数qsort进行快速排序,就不自己写快速排序算法函数了

qsort(data,dlen,IntSize,lessthan);

if(c=dlen)

{

(*(result+rlen)).v=*(data+c-1);

(*(result+rlen)).bl=1;

}

rlen++;

}

for(n=0;nrlen;n++)

{

if(1==(*(result+n)).bl)

printf("Case #%d:%d\n",n+1,(*(result+n)).v);

else

printf("Case #%d:-1\n",n+1);

}

free(data);

free(result);

return 0;

}

在一个数组中查找一个数,用C语言怎么写代码?

#includestdio.h

int main(void)

{

int i,j,k=0,sz[10]={5,75,89,428,576,5986,7543,8524,9805,1057};

printf("  请输入要查找的数:");

scanf("%d",j);

for(i=0;i10;i++)

if(sz[i]==j)

{

printf("  sz[%d] = %d\n",i,sz[i]);

k++;

}

if(!k)

printf("  数组中没有您要查找的数。\n");

return 0;

}