c语言中怎么把一维数组初始化为全零啊,不用循环

如题所述

下面3种方法:

1.int arr[10]={0};

如果只对数组的一部分进行初始化,则编译器将把其他元素设置为0。因此,当只将第一个元素初始化为0时,编译器会自动将其他元素设为0 (就像前一句说的那样)。

2.int arr[31]={};

3.用memset函数在程序开始时初始化数组。比如:

int arr[1024];

memset(arr, 0, 1024); //清零

扩展资料:

memset()函数原型是extern void *memset(void *buffer, int c, int count) buffer:为指针或是数组,c:是赋给buffer的值,count:是buffer的长度。

函数解释:将s中当前位置后面的n个字节 (typedef unsigned int size_t )用 ch 替换并返回 s 。

memset:作用是在一段内存块中填充某个给定的值,它是对较大的结构体或数组进行清零操作的一种最快方法 ,它通常为新申请的内存做初始化工作。

参考资料:memset-百度百科

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2019-10-29
比较简单的有两种 方法。 一种是 在定义的时候直接赋值为0, int a[10]={0};
另一种 是memset 在头文件string.h里
int a[10];
memset(a,0,sizeof(a));
拓展资料:C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。
二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。 目前2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。
C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。本回答被网友采纳
第2个回答  推荐于2017-10-14

具体初始化方法可以参考如下程序段:(方法一)

int a[5] = {0};  // 将整型数组a的每个元素都初始化为0

或者也可以用如下方法进行初始化:(方法二)

int a[5] = {0, 0, 0, 0, 0}; // 将整型数组a的每个元素都初始化为0,初始化效果同上


方法一的初始化方法是将数组元素都初始化为同一个数值;

方法二的初始化方法可以分别对数组的每个元素进行初始化,每个元素的数值可以不同。

第3个回答  2009-11-03
很简单 只要初始化第一个就行可以了,其他的会自动初始化为0,如下
int a[SIZE]={0};
第4个回答  2009-11-03
例子:

int i,j,ok[10];
memset(ok,0,sizeof(ok));

memset就能完成你的功能。

c语言中怎么把一维数组初始化为全零啊,不用循环
在C语言中,有多种方法可以快速将一维数组初始化为全零,无需使用循环。以下是三种常见的方法:1. 直接使用花括号初始化:首先,你可以直接在定义数组时指定所有元素为0,如:int arr[10]={0};。这种方法适用于数组的长度已知且希望所有元素均为0的情况。如果仅初始化部分元素,编译器会自动为剩余元...

c语言中怎么把一维数组初始化为全零啊,不用循环
1.int arr[10]={0};如果只对数组的一部分进行初始化,则编译器将把其他元素设置为0。因此,当只将第一个元素初始化为0时,编译器会自动将其他元素设为0 (就像前一句说的那样)。2.int arr[31]={};3.用memset函数在程序开始时初始化数组。比如:int arr[1024];memset(arr, 0, 1024); \/\/...

C语言中怎么把一维数组初始化都为0,
1、首先,需要定义数组,数组常用类型有int型,float浮点型,char字符型等,输入即可定义。2、然后就是数组的名称了,可以自己定义,但是要符合相应规则。3、一般在数组定义阶段就确定数组的大小,输入数字即为数组大小,如下图所示。4、然后,可以对数组进行初始化,在花括号{}中输入即可。5、如果初始化...

数组初始化
使用memset函数 例如:include<iostream> using namespace std;int a[1000][1000];int main(){ memset(a,0,sizeof(a));for(int i=0;i<1000;i++)for(int j=0;j<1000;j++){ cout<<a[i][j]<<endl;} system("pause");} 这样就行了,但只能赋值为0和-1;...

C语言数组的初始化表示方法
不是inta[] 而是例如int a[10]这种。括号内一定要有个常量数字。我们可以这样定义 define N 5 int a[N]这表明了数组名为a;数组有5个元素;分别是a[0]到a[4];对于数组来说;数组是变量的集合,因此数组也具有与变量相同的数据类型和储存类型。数组的类型就是它所有的变量的类型。在定义数组...

c语言一维数组赋值方法
c int arr[5]; \/\/ 声明一维数组但不初始化 for { arr[i] = i + 1; \/\/ 通过循环逐个赋值 } 这种方法的优点是灵活性强,可以在运行时根据实际需求动态地给数组元素赋值。缺点是相比初始化赋值的方式稍显繁琐。三、通过指针进行赋值 在C语言中,指针是与数组紧密相关的概念。通过指针也可以实现...

c语言double型一维数组 初始化
如果你反复使用它,那么数组元素里的值不断变化,就不再是“初始化”的值了。要恢复为初值,当然需要重新给值。double d[10000] = {0.0} 用循环语句重新给值没有难度啊: for (i=0;i<10000;i++) d[i]=0.0;memset 之类函数,你要能记得,当然也可以用。但它的值只能是1字节unsigned ...

在C语言中数组的初始化是如何定义的?
变量可以在定义的时候初始化,数组也可以。array[5]={1,2,3,4,5};在定义数组时,可以用放在一对大括号中的初始化表对其进行初始化。初始化值的个数可以和数组元素个数一样多。如果初始化的个数多于元素个数,将产生编译错误;如果少于元素个数,其余的元素被初始化为0。如果维数表达式为空时,...

C语言字符数组如何初始化?
C语言允许用字符串的方式对数组作初始化赋值。例如:static char c[]={'c',' ','p','r','o','g','r','a','m'}; 可写为:static char c[]={"C program"}; 或去掉{}写为:static char c[]="C program";当对全体元素赋初值时也可以省去长度说明。例如:static char c[]={`...

C语言 一维数组赋值
(2)数值数组如果只定义不初始化,编译器不为数组自动指定初始值,即初值为一些随机值(值不确定)。4.如果全部元素均指定初值,定义中可省略元素的个数。例:int a[5]={9,28,3,4,5};可以写为:int a[]={9,28,3,4,5};数组元素的引用 c语言规定,不能整体引用数值数组,只能逐个引用数组...

相似回答