数组的初始化(初始化就是在定义时赋值):
1、满数初始化
int arr[5] = {1,2,3,4,5}; //arr[0]–>1 arr[4]-> 5
2、部分初始化
int arr[5] = {1,2,3}; //arr[0]=1, arr[1]=2,arr[2]=3,arr[3]=0,arr[4]=0
根据上面可得出:
想在初始化时让所有的元素的值都为0,int arr[5] = {0};
二维数组的初始化:
int a[2][3] = {
{1,2,3}, {4,5,6}}; //满数初始化时,行号可以省略,但是列数不能省略
//因为列数代表类型,后面讲
int a[2][3] = {
{1}, {4,5}};
int a[2][3] = {1,2,3,4,5,6};
数组的赋值:
int arr[5];
arr[5] = {1,2,3,4,5}; //error arr[i]这种写法是访问数组元素,并且arr[5]越界了
arr = {1,2,3,4,5}; //error arr是数组名,我们目的是给数组中的每一个元素赋值
所以:赋值时只能依次给每个元素赋值,使用for循环来实现
字符数组:元素类型为char类型数组
char str[5] = {‘a’,’b’,’c’,’d’,’\0′};
char str[5] = “abcd”;
char str[5] = “ab”;
字符数组的赋值:
scanf(“%s”, 数组名);
printf(“%s\n”,数组名);
字符串的输入与输出函数:
字符串的输入函数:gets(数组名);
字符串的输出函数:puts(数组名);
注意:scanf和gets都可以给字符数组赋值,但是scanf以空格和回车作为结束标志
而gets只以回车作为结束标志
在使用gets时,因为gets不做越界检查,所以当输入字符串时,最多只能输入n-1个字符
scanf也一样
字符二维数组:
char str[2][20] = {“hello”, “world”};
今天的文章数组赋值分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/8514.html