C语言给数组全部赋初值(非零)的方法,不用循环!!

作者&投稿:舌媚 (若有异议请与网页底部的电邮联系)
C语言里怎么给一维数组赋相同初值?~

int a[1000];
memset(a,-1,sizeof(int)*1000);注意按字节赋值 -1的补码=11111111
想赋值1就行不通了 1的补码=00000001
头文件是string.h

c++里面的fill 可以赋值任何数 fill(a,a+1000,1); fill(a,a+1000,-1); 头文件iostream

有的,memset(a,0,n),将a数组的前n个元素赋值为0。

memset(a,x,sizeof(a));——其中x是你要赋的初值。如有int a[1000],x=0;memset(a,x,sizeof(a));执行后将从地址a起存入4000个0……

试过memset(a,val,sizeof(a));没


C语言中,如果我要将一个二维数组的所有元素全部初始化为1,我可以这样...
这样当然不对。这样的结果是只有SS[0][0]被附值为1。其他全是0。想为数组附值酒药用循环做。比如SS[m][n]int i,j;for(i=0;i<m;i++)for(j=0;j<n;j++)ss[i][j]=1; 这样就给所有元素附值为1了;

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

在C语言编程中,定义一个数组时要不要初始化?
不是不能初始化,是初始化的不对。另外,数组最好用memset初始化。(1)在定义数组时对数组元素赋以初值。如:static int a[10]={0,1,2,3,4,5,6,7,8,9};经过上面的定义和初始化后,a[0]=0,a[1]=1,… ,a[9]=9。(2)初始化时可以只对一部分元素赋初值。例如:...

在易语言里怎样让数组变量里的所有变量都给它们赋上一样的值?帮帮忙...
.版本 2 .局部变量 数组变量, 文本型, , "3,2"连续赋值 (“欢迎使用”, 数组变量 [1] [1], 数组变量 [1] [2], 数组变量 [2] [1], 数组变量 [2] [2], 数组变量 [3] [1], 数组变量 [3] [2]).版本 2 .局部变量 数组变量, 文本型, , "6"连续赋值 (“欢迎使用”, 数组...

C语言:“除了在定义数组时用初值列表对数组整体赋值以外,无法再对数组...
正确的——这里说的“能”与“不能”是指用C语言的语句操作。C没有提供对数组整体赋值的语句,所以肯定是不能对数组进行整体赋值的。严格说,“除了在定义数组时……”的说法也欠妥,因为C代码中的变量定义语句其实也不属于C,而是C的编译器语句——就是说那些定义语句并不生成机器代码,只是在编译时...

C语言能直接用一个数组名对数组进行赋值吗?
可以的 。int a[3] = {1,2,3};int b[3];b = a;错误提示:F:\\>gcc test.ctest.c: In function 'main':test.c:8:4: error: incompatible types when assigning to type 'int[3]' from type'int *'

c 语言中,数组全部初始化为1,请问有系统写好的函数吗?要不用什么方法最...
1.不管哪门高级语言都没有全部初始化为1的函数,或者说没有用于初始化的可以供用户调用的函数。2.你可以选择手动循环赋值,当然方法不止一种。如可以用下面的代码(假设数组为a[10])for (int i=0;i<10;i++){ a[i]=1;}

二级c语言问题 字符数组可以在定义时对其整体赋初值,但在赋值语句中不...
定义赋初值是指 这样:int a【5】={1,2,3,4,5}; 而赋值语句赋初值是这样: int a 【5】;a【0】=1;a【1】=2,。。。a【4】=5;而不能是这样 a={1,2,3,4,5};就是说如果不是在定义的时候赋值,单独赋值就要对每个成员依次赋值而不能整体赋值 ...

C语言中用scanf和循环语句是怎么给数组一一赋值的,希望说得详细点_百...
include <stdio.h>int main(void){ int name[10];int n;for (int i=0;i<10;i++){ scanf("%d",&n);\/\/输入函数,后边的&n是说存入n的所在的地址 name[i] = n;\/\/再把输入数据给数组 } for (i=0;i<10;i++){ printf("%d\\n",name[i]);} return 0;} ...

C语言不允许用 赋值运算符 对数组整体进行赋值。这句话怎么理解呀,是一...
正确。数组是多个元素的集合,而数组名是记录数组首地址的指针常量,赋值时C语言编译器会认为是要修改数组名记录地址值,这是不允许的。

运河区15831617415: C语言给数组全部赋初值(非零)的方法,不用循环!! -
凤德先瑞: memset(a,x,sizeof(a));——其中x是你要赋的初值.如有int a[1000],x=0;memset(a,x,sizeof(a));执行后将从地址a起存入4000个0……

运河区15831617415: C语言:求将一个数组全部赋值为一个非零的数字(别给我玩循环结构),要一个函数之类的 -
凤德先瑞: 赋成0和-1可以用 memset办到 还有一些特殊的整数也能用memset办到 但是赋成1001,我可以明确地说,没办法用除了循环以外(没有现成函数)的较短的代码办到.方法有这么几个;1. 写成代码a[0][0]=1001;.......a[99][99]=1001;1万个赋值2. 聪明一点,用memcpy 大概log(100*100),14条memcpy语句可以办到

运河区15831617415: C语言,给数组赋初值 -
凤德先瑞: 数组只能够初始化进行赋值,类似于const int a = 10;int A[2][2] = {0}; //注意看与你的写法区别 要相对数组赋值,只能类似于A[0][0] = x;这种方式,也就是通过间接的方式赋值!

运河区15831617415: C语言:对数组赋值.很简单 -
凤德先瑞: 回答,对全部元素赋初值(既提供全部初始数据,就是不用scanf函数在输入了),则定义数组时对第一维长度可以不指定,但是第二维长度不能省. 你的数组赋初值可以这么写 int a[][3]={{1,2,3},{4,5,6}}; 这样就对了,标点符号要英文的,也就是半角的.你写的那个不正确,编译系统会报错的.而且在补充一点://才是注视的符号,我叫他反斜杠,就是与除号相反.

运河区15831617415: C语言:给数组中的元素赋值 -
凤德先瑞: 没有赋值的元素的值都是初值,写一个循环判断就行了 int i; for(i=0;i<20;i++) { if(a[i]==0)//如果是字符数组,换成NULL { a[i]= ; break; } }

运河区15831617415: 求具体举例说明C语言数组的三种输入方法:赋初值、初始化、动态赋值. -
凤德先瑞: 初始化:int a[2]={1,2}; 赋初值:int b[3]; b[3] = {1,2,3}; 动态赋值:int c[3]; int i; for(i = 0;i < 3;i++)c[i] = i;

运河区15831617415: 在C语言中,若想要把把数组中全部元素均赋为零,可对数组不赋初值,对吗? -
凤德先瑞: 不对.c语言声明数组时,只分配相应的内存空间和地址,并不赋初值,各元素的值是乱七八糟的数字.所以:int names[5]; 与 int names[5]={0}; 是完全不等价的.

运河区15831617415: c++怎样将一维数组整体赋相同初值 -
凤德先瑞: C/C++不支持数组整体赋值,可以在声明数组时整体初始化.无论数组有多大,全部初始化为0的操作很简单,如int a[3000]={0};就可以将a的3000个元素全部置0;若要赋其他值,例如全部赋值为7,写成int a[3000]={7};则不行,这只给a[0]赋...

运河区15831617415: c语言数组给初值 -
凤德先瑞: int a[3],a[3]={0}不对 第一:int 后面是变量的声明,几个不同的变量用“,”号隔开,你的变量声明中有两个同名的数组a,第一个没有赋初值,第二个赋了初值,首先不管赋不赋值,你的两个同名变量就通不过编译 第二:若要在声明完变量再用赋值语句赋值的话,应该是int a[3];a[0]= 0 ;a[1]= 0 ;a[2]= 0 ; 并且,你要用赋值语句赋值的话,a[3]={0},也不对,首先a[3]不存在,数组a的下标是从0到2的,a[3]就属于越界访问.其次用{}赋值只能用在数组声明的时候

运河区15831617415: 在C语言中,如果给数组中的全部元素赋值,则在定义数组时,可以不给出数组长度. 对不对? -
凤德先瑞: 这么说把.字符数组只能初始花时全部赋直,在程序中只能用下标来逐个赋直,在初始化时如果全部指定了初直就可以省略数组长度

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网