当前位置:首页 » 编程语言 » 对数组赋值的语句c语言
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

对数组赋值的语句c语言

发布时间: 2022-05-19 11:33:50

Ⅰ 在c语言如何在定义数组时给数组赋值

要理解C语言中数组的运作机制,我们首先必须理解如何声明一个数组,例如:

inta[3];

这个语句声明了a是一个拥有了3个整型元素的数组,类似的:

struct{
intp[4];
doublex;
}b[17];

声明了b是一个拥有17个元素的数组,其中每个元素都是一个结构,该结构中包括了一个拥有4个整形元素的数组(命名为p)和一个双精度类型的变量(命名为x)。

现在考虑下面的例子:

intcalendar[12][31];

这个语句声明了calendar是一个数组,该数组拥有12个数组类型的元素,其中每个元素都是拥有31个整型元素的数组(而不是一个拥有31个数组类型的元素的数组,其中每个元素又是一个拥有12个整型数组元素的数组)因此sizeof(calendar)的值是372(31*12)与sizeof(int)的乘积。

如果calendar不是用于sizeof的操作数,而是用于其他的场合,那么calendar总是被替换成一个指向calendar数组的起始元素的指针。要理解上面这句话的含义,我们首先必须理解有关指针的一些细节。

Ⅱ C语言,结构体中的数组怎么赋值,

(1)用字符常量逐个初始化数组。例如:

char a[8]={'i','l','o','v','e','y','o','u'};

把8个字符依次分别赋给c[0]~c[7]这8个元素。

如果在定义字符数组时不进行初始化,则数组中各元素的值是不可预料的。如果花括号中提供的初值个数(即字符个数)大于数组长度,则出现语法错误。

如果初值个数小于数组长度,则只将这些字符赋给数组中前面那些元素,其余的元素自动定为空字符(即'')。

如果提供的初值个数与预定的数组长度相同,在定义时可以省略数组长度,系统会自动根据初值个数确定数组长度。

例如:char c[]={‘c’,‘’,‘p’,‘r’,‘o','g','r','a','m'};

这时c数组的长度自动定为9。也可以定义和初始化一个二维字符数组,例如:

char diamond[5][5]={{'','','#'},{'','#','','#'},{'#','','','','#'},

{'','#','','#'},{'','','#'}};用它代表一个菱形的平面图形。

(2)字符串常量初始化数组。例如:

char c[]={‘c’,‘’,‘p’,‘r’,‘o','g','r','a','m'};

可写为:char c[]={"C program"};

或去掉{}写为:char c[]="C program";

注意:此时数组c的长度不是9,而是10。因为字符串常量的最后由系统加上一个''。上面的初始化与下面的初始化等价。

char c[]={‘c’,‘’,‘p’,‘r’,‘o','g','r','a','m',''};

(2)对数组赋值的语句c语言扩展阅读:

其定义的一般形式是:char数组名[数据长度]

例如:

char c[10];

c[0]='I';c[1]='';c[2]='l';c[3]='o';c[4]='v';c[5]='e';c[6]='';c[7]='y';c[8]='o';c[9]='u';

以上定义了c为字符数组,包含10个元素。

由于字符型数据是以整数形式(ASCII代码)存放的,因此也可以用整型数组来存放字符数据,例如:

int c[10];

但这时每个数组元素占2个字节的内存单元,浪费存储空间。

字符数组也可以是二维或多维数组,例如:

char c[5][10];

即为二维字符数组。

初始化

字符数组的初始化与数值型数组初始化没有本质区别。但它除了可以逐个给数组元素赋予字符外,也可以直接用字符串对其初始化。

输入输出

字符数组的输入

(1)用getchar()或scanf()的'%c'格式符对数组进行字符赋值。例如,对于数组a[10]:用getchar()赋值:

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

a<i>=getchar();

用scanf()赋值:

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

scanf("%c",&a<i>);

(2)用scanf()的'%s'格式对数组赋值。还是对于数组a[10]:

scanf("%s",a);

scanf("%s“,&a[0]);

输入”C program“并回车时,a数组会自动包含一个以”“结尾的字符串”C program“。

字符数组的输出

(1)用putchar()或printf()的‘%c’格式符对数组进行字符赋值。例如,对于数组a[10]:用putchar()赋值:

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

a<i>=putchar();

用printf()赋值:

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

printf("%c",a<i>);

输出结果为:

c program

(2)用printf()的'%s'格式对数组赋值。还是对于数组a[10];

printf("%s",a);

输出结果为:

c program

Ⅲ c语言中如何给数组定义并赋初值

字符串数组定义赋值:

char c[6]={'c', ' h ', 'i', 'n', 'a' , '' }

整数数组定义赋值:

int a[5]={1,2,3,4,5};

int a[5];

for(int i=0;i<5;i++)

a[i]=i;

定义float数组并赋值:

float b[10]={1.1,2.2,3.3,4.4,5.5,6.6,7.7,8.8,9.9,0.0}

(3)对数组赋值的语句c语言扩展阅读:

数组:是有序的元素序列。 若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。

用于区分数组的各个元素的数字编号称为下标。数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按无序的形式组织起来的一种形式。 这些无序排列的同类数据元素的集合称为数组。

声明固定大小的数组:

有三种方法声明固定大小的数组,用哪一种方法取决于数组应有的有效范围:

1,建立公用数组,在模块的声明段用 Public语句声明数组。

2,建立模块级数组,在模块的声明段用 Private语句声明数组。

3,建立局部数组,在过程中用 Private语句声明数组。

参考资料来源:网络-数组

Ⅳ C语言怎样给字符数组赋值

1、单字符赋值,可通过数组下标方式或指针方式,引用数组元素,进行赋值。

例子:

char a[10];

char ch='a';

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

a[i]=ch+i ; //可通过数组下标引用数组元素,完成赋值

char *p;

for( p=a; p<a+10; p++ )

*p=ch++; //通过指针对数组相应元素赋

2、字符串赋值,可使用string.h头文件中的字符串操作函数进行赋值。

例子:

char a[10];

strcpy( a, "abcdefgh");

sprintf(a, "%s", "abcdefgh");

(4)对数组赋值的语句c语言扩展阅读:

C语言给字符数组赋值的优点:

1、简洁紧凑、灵活方便

C语言一共只有32个关键字,9种控制语句,程序书写形式自由,区分大小写。把高级语言的基本结构和语句与低级语言的实用性结合起来。C 语言可以像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。

2、运算符丰富

C语言的运算符包含的范围很广泛,共有34种运算符。C语言把括号、赋值、强制类型转换等都作为运算符处理。从而使C语言的运算类型极其丰富,表达式类型多样化。灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。

Ⅳ C语言:对数组赋值。很简单

你这样属于溢出,因为后面的几个元素不在为数组分配内存区域内,因此可以被其它数据任意占用,值也就可能会改变。这种操作应该避免,对于数组赋值,应该进行严格的边界检查

Ⅵ c语言数组定义和赋值是什么

c语言数组定义是:

char c[6]={'c', ' h ', 'i', 'n', 'a', '' };

整数数组定义赋值是:

int a[5]={1,2,3,4,5};

int a[5];

for(int i=0;i<5;i++)

a[i]=i;

定义float数组并赋值:

float b[10]={1.1,2.2,3.3,4.4,5.5,6.6,7.7,8.8,9.9,0.0}

声明固定大小的数组:

有三种方法声明固定大小的数组,用哪一种方法取决于数组应有的有效范围:

1、建立公用数组,在模块的声明段用 Public语句声明数组。

2、建立模块级数组,在模块的声明段用 Private语句声明数组。

3、建立局部数组,在过程中用 Private语句声明数组。

Ⅶ C语言数组赋值

char
ch[7]={"65ab21"}就是字符数组赋初值,类似于
char
ch[7]={'6','5','a','b','2','1','\0'};
s=10*s+ch[i]-'0'的意思是把字符串转化位数字,比如说"123",它是字符串,转化为数字123,ch[i]-'0'就是把数字字符与零字符的acsii码相减,得到数字字符相应的数字,比如'5'-'0'=5

Ⅷ C语言,怎么用for 循环给数组赋值 说的简单详细点, 谢谢了

1、首先打开c语言项目,输入如图所示代码创建一个int类型的数组。

Ⅸ C语言 怎么把字符数组中的字符赋值给字符变量

第一种写法,等同于char a[10] = {"abc"};
第一种写法,用一个字符串赋值,实际上保存了4个字节(包含字符串结束符)。
第二种写法,只赋值了三个字节。
1、char c[5];

c[0]=’H’; c[1]=’e’; c[2]=’l’; c[3]=’l’; c[4]=’o’;

2、charc[5]={‘H’,’e’,’l’,’l’,’o’};

3、(1)如果在定义字符数组时不进行初始化,则数组中各元素的值是不可预测的;

(2)如果花括号中提供的初值个数(即字符个数)大于数组长度,则按语法错误处理;

(3)如果花括号中提供的初值个数(即字符个数)小于数组长度,则只将这些字符赋给数组中前面那些元素,其余的元素自动定为空字符(即‘\0’);

4、(如何将字符串赋值给字符数组)

C语言中,将字符串作为字符数组来处理的。C语言规定了一个“字符串结束标志”,以字符’\0’作为标志。为此,再对字符数组初始化的方法补充一种用字符串常量来使字符数组初始化方法:

char c[] = {“Hello”};

或 char c[] =“Hello”; 注意:数组c的长度不是5,而是6.

上面的初始化等价于:char c[5]={‘H’,’e’,’l’,’l’,’o’,’\0’};

而不等价于:charc[5]={‘H’,’e’,’l’,’l’,’o’};

5、字符数组的输出

char c[] ={“Hello”};

printf(“%s”,c);

6、(如何将字符串赋值给字符数组)

strcpy(字符数组1,字符串2)

eg: char str1[10]=’’, str2={“Hello”};

strcpy(str1,str2);

执行后str1状态为:

H
e
l
l
o
\0
\0
\0
\0
\0
(1)“字符数组1”必须写成数组名形式(如str1),“字符串2”可以是数组名,也可以是字符串常量。eg strcpy(str1, “Hello”);

(2)不能用赋值语句将一个字符串常量或字符数组直接给一个字符数组。如下面两句都是不合法的:str1=”Hello”;

str1=str2;

而只能用strcpy函数将一个字符串复制到另一个字符数组中去,赋值语句只能将一个字符赋给一个字符型变量或者字符数组元素。如下面的语句是合法的:

char c[5],c1,c2;

c1=’A’;c2=’B’;

c[0]=’H’; c[1]=’e’; c[2]=’l’; c[3]=’l’; c[4]=’o’;

7、strlen函数是测试字符串实际长度(不包含‘\0’在内)的函数。

char c[10]=”Hello”’

printf(“%d”,strlen(c)); 或者Printf(“%d”,“Hello”); 输出为5

Ⅹ 用C语言怎么输入为数组赋值,求代码

#include <stdio.h>
int main(void)
{
int a[5];

printf("请输入5个数字:");

for(int i=0;i<5;i++) {

scanf("%d",&a[i]);

}

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

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

}

printf(" ");
return 0;
}

(10)对数组赋值的语句c语言扩展阅读:

for循环

for循环是编程语言中一种开界的循环语句,而循环语句[1]由循环体及循环的终止条件两部分组成,for循环其在各种编程语言中的实现与表达有所出入,但基本为以C语言和pascal语言代表的两种形式。

C语言中的for循环形式为:

for(单次表达式;条件表达式;末尾循环体)

{

中间循环体;

}

for循环小括号里第一个“;”号前为一个为不参与循环的单次表达式,其可作为某一变量的初始化赋值语句, 用来给循环控制变量赋初值; 也可用来计算其它与for循环无关但先于循环部分处理的一个表达式。

执行的中间循环体可以为一个语句,也可以为多个语句,当中间循环体只有一个语句时,其大括号{}可以省略,执行完中间循环体后接着执行末尾循环体。