day 7二维整型数组、字符型数组

二维整形数组


1、二维整形数组的定义:
        数据类型 数组名[第一维数组的元素个数][第二维数组的元素个数];

        数据类型 数组名[行数][列数];

        例如:int a[2][3];

2、数组元素的访问:
        数组名[行下标][列下表];

        例如:a[0][0]

3、初始化:
        1.全部初始化
例如: int a[2][3] = {1, 2, 3, 4, 5, 6};
            int a[2][3] = {{1, 2, 3}, {4, 5, 6}};
        2.局部初始化
例如: int a[2][3] = {1, 2, 3, 4};
            int a[2][3] = {{1, 2}, {3}};
            int a[2][3] = {0};
            int a[2][3] = {{0}};
        3.默认初始化
            行能省略,列不能省略
 例如:int a[][3] = {1, 2, 3, 4};
            int a[][3] = {{1, 2}, {3}};

要注意的是:初始化 != 赋值 

4、二维数组的存储:

        数组所占空间大小 = 每个元素所占字节大小 * 行数 * 列数

二维数组存储的特性:

        1.连续性:数组的存储空间是连续的
        2.有序性:数组存放数据顺序有序   将二维数组逐行从左到右存储

多维数组

二维数组是由一维数组构成的一维数组,N维数组:是由N-1维数组构成的一维数组

5、二维数组的输入和输出

        1.输入:可以利用scanf("%s")或者gets

        2.输出:可以利用printf("%s")或puts

字符型数组
   

在C语言中没有字符串类型,只能通过字符型数组存放字符串

1、数组的定义:
        数据类型 数组名[元素个数];

        char str[32];

需要注意:
            1.字符型数组在存放字符串时,必须能够存放下末尾的\0字符
            2.元素个数必须为常量

2、数组元素的访问:
        数组名[下标];

3、数组元素的初始化 
        1.全部初始化:
例如: char str[6] = {'h', 'e', 'l', 'l', 'o', '\0'};  
        
        2.局部初始化:
例如: char str[6] = {'h', 'e', 'l'};
            需要注意:
                没有给定初值的元素被赋值为0('\0') ,而不是'0'

        3.默认初始化:
例如: char str[] = {'h', 'e', 'l', 'l', 'o'};

            需要注意:
                初始化 != 赋值
            
4、数组的存储:

        数组所占空间大小 = 元素个数 

数组存储的特性:

        1.连续性:数组存放空间连续
        2.有序性:按照顺序依次存放

5、字符串的输入和输出:
输入 printf("%s\n", str);
        puts(str);

        按照字符串打印:从字符串开头到第一个\0中间的内容打印

输出 scanf("%s", str);

        gets(str);
        两个的区别为:scanf无法接收带' '的字符串而gets可以接收带' '的字符串

6、字符串常见操作:
        1.字符串的赋值(字符串的拷贝):
            strcpy:字符串拷贝函数 
            用法:
                strcpy(str, "hello world");
                strcpy(str, src);
            需要注意:
                目的空间必须能够存放下拷贝的字符串,否则会内存越界

        2.字符串的拼接:
            strcat:字符串拼接函数
            用法:
                strcat(str, "world");
                strcat(str1, str2);
           需要注意:
                原字符串数组必须能够存放拼接后的字符串

        3.字符串的比较:
            strcmp 
            字符串比较函数
            用法:
                strcmp(str1, str2);   
                如果结果 > 0则  str1 > str2 
                如果结果 < 0则  str1 < str2
                如果结果 == 0则  str1 == str2

            需要注意:
                1.区分大小写
                2.两个字符串到右依次比较,不相同的ASCII码值谁大,字符串谁就大

        4.字符串的长度:
            strlen 
            获得字符串的长度(从字符串开头到’\0‘之前元素的个数)
            用法:
                int len;
                len = strlen(str);

  • 6
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值