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

Python014

c语言中如何给数组定义并赋初值?,第1张

字符串数组定义赋值

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

整数数组定义赋值:

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

int a[5]

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

     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语句声明数组。

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

intmain(void){

structstudentsbao={}

printf("%d,%s\n",bao.id,bao.name)//输出是4224528,空(应该是null)

//structstudentsbao={3,"123"}可以。第一种赋值方法

//strcpy(bao.name,"bao")//可以,

//printf("%d,%s\n",bao.id,bao.name)

//bao.name="bao"错误“stray'\351'inprogram”其他是乱码,

//bao.name[0]='a'

//bao.name[0]='/0'

//printf("%d,%s\n",bao.id,bao.name)

/*这样可以,*/

//chararr[10]="baobao"

////bao.name=arr//error"assignmenttoexpressionwitharraytype"

//scanf("%s",bao.name)//可以,

//printf("%d,%s\n",bao.id,bao.name)

//所以scanf那一类函数都可以。

//还有就是memcpy函数也是可以的

return0

}

扩展资料

C语言结构体数组的直接赋值及数组的长度计算:

#include<stdio.h>

//自定义一个字符串的结构体,包含字符串和字符串长度两个变量

typedefstructStr{

charch[100]

intlength//char数组(字符串)的长度

}myStr

//刚开始声明变量时每个变量的字符串长度length都为0

//这里以长度为10的数组为例,数组长度是1000

//对第0个到第9个结构体数组的长度同时赋值为0

myStrmyStr1[10]={

[0...9]={

.length=0,

}

}

intmain(){

inti

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

printf("%d\n",myStr1[i].length)

}

return0

}