您的位置:

c语言如何将整型数组中清除,C语言清空数组

本文目录一览:

c语言 关于字符数组和整型数组清零

C语言数组和整型数组清空方法,示例:

1、整数数组清零

函数:void bzero(void *s, int n)

头文件: #include string.h

功能说明:将字符串s的前n个字符置为0,一般n取sizeof(s),将整块空间清零;

举例:char str[10];    bzero(str, sizeof(str));      也可以将整个结构体清零;

2、数组清空

使用时间:94s

for( k = 0 ; k 10000 ; k++ )

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

for( j = 0;j MAX; j++ )

a[i][j] = 0;

扩展资料

C语言结构体初始化

1、定义:

struct InitMember

{

int first;

double second;

char* third;

float four;

};

2、定义时赋值:

struct InitMember test = {-10,3.141590,"method one",0.25};

c语言:从数组中删除数据怎么做?

#includestdio.h

#define N 10

void main( )

{

int a[N] , num ,i , *p , n=N;

int j;

/*输入N个数到数组a中;*/

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

{

scanf(“%d”,num);

a[i]=num;

}

/*在数组a中删除指定的数num;*/

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

{

if(a[i] == num)

{

//a[i]=a[n];//如果不保留原数组里的顺序,此一句即可代替下边2行语句,同时省掉变量j

for(j=i;jn-1;j++)

a[j]=a[j+1];

n--;

}

}

/*输出删除了num后的数组a;*/

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

printf("%d ",a[i]);

getchar();

}

C语言删除一个整型数组里面重复的元素

利用双重循环,将每个值依次与其后面的值相比较,如果有相同的则删除该元素即可。

删除时,可以使用将后面元素依次向前移动一位,同时总长度减一的方式。

参考代码如下:

int remove_repeat(int *a, int l)

{

    int i, j, k;

    

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

    {

        for(j = i+1; j l; j ++)//对后面每个元素比较,去重。

        {

            if(a[j] == a[i])//发现重复元素。

            {

                for(k = j+1; kl; k ++)//依次前移一位。

                    a[k-1] = a[k];

                l--;//总长度减一。

            }

        }

    }

    

    return l;//返回新的长度值。

}

c语言数组怎么清零

c语言不能对这个数组赋值,只能通过遍历数组达到给数组中每个元素赋值的目的。初始化的时候可以用inta[4]={0};这样给整个数组元素赋值为0,若想给已初始化的数组清零,也只能遍历数组。

在C语言中,所谓的“清空”,意思是“无视里面的数据”,而不是“让里面没有数据”。有时候可能需要把一个数组清零,意思是全部数据都用0填充,可以用库函数来实现。假设数组名为a,无论什么类型也无论几维都一样,可以写成memset(a,0,sizeof(a));

扩展资料:

在C语言中, 数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。

关于可变长数组(VLA)的问题:原来的C89标准中是不允许可变长数组出现的,但是在C99标准中,加入了对VLA的支持,但是支持的编译器不多,而且由于栈溢出的安全问题,没有太多的人敢用这个可变长数组,所以在C11标准中又把它规定为可选实现的功能了。

参考资料来源:百度百科-数组