C语言学习笔记day10

1. 字符型数组的输入和输出

1.1 gets

          char str[12];
          
          gets(str);
          注意:
            1.可以接收' '字符 
            2.会去掉从终端接收的\n字符

1.2 puts

          char str[12];
          
          puts(str);
          注意:
            1.puts会加上\n字符 

1.3 scanf

          char str[12];
          
          scanf("%s", str);
          注意:
            1.scanf无法接收' '字符 
            2.scanf使用%s不需要加&符号

1.4 printf

          char str[12];
          
          printf("str = %s\n", str);

2. 一维字符型数组的初始化(初始化不等于赋值)

2.1 全部初始化

            char str[6] = {"hello"};
            char str[6] = "hello";            
            char str[6] = {'h', 'e', 'l', 'l', 'o', '\0'};

2.2 局部初始化

            char str[6] = {"hel"};
            char str[6] = "hel";
            char str[6] = {'h', 'e', 'l'};
            char str[6] = {0};
            
            注意:
                没有给定初值的元素会被赋值为0('\0')

2.3 默认初始化

            char str[] = {"hello"};
            char str[] = "hello";
            char str[] = {'h', 'e', 'l', 'l', 'o'};

3. 一维字符型数组的存储

3.1 连续性:内存空间连续

3.2 有序性:数据存储顺序有序

3.3 数组所占空间大小

            数组所占空间大小 = 每个元素所占空间大小 * 元素个数 
            
            char str[32] = {"hello"};
            
            sizeof(str);

4. 字符串常见的操作函数(重点)

4.1 strlen

                获得字符串的长度(从字符串开头到最近的\0中间元素个数)

4.2 strcpy

                字符串的拷贝
                注意:
                    字符串的赋值不能使用=,要用strcpy 

4.3 strcat

                字符串的拼接
                注意:
                    字符串的加法不能使用+,要使用strcat 

4.4 strcmp

                字符串的比较 
                获得两个字符串比较的结果
                相等返回0 
                第一个字符串>第二个字符串返回>0的值
                第一个字符串<第二个字符串返回<0的值 
                注意:
                    字符串的比较不能使用=,要使用strcmp 

5 字符串的遍历操作

        char str[32];
        int i = 0;
        
        while (str[i] != '\0')
        {
            str[i];    //访问每一个字符
            
        

6. 二维数组

6.1 二维整型数组

6.1.1 定义

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

6.1.2 初始化

            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}};
                
                注意:
                    行能省略,列不能省略

6.1.3 存储

            连续性:数组空间连续
            有序性:数组逐行从左到右存储

            二维数组的本质:
                二维数组可以看成是一维数组的一维数组

6.2 字符型二维数组(用于存储字符串数组)

6.2.1 定义

            char str[5][32];    

6.2.2 初始化

            char str[5][32] = {"hello", "world", "how", "are", "you"};
            char str[5][32] = {{'h', 'e', 'l'}, {'w', 'o'}};

相关推荐

  1. C语言学习笔记day10

    2024-03-21 00:20:01       39 阅读
  2. C语言学习笔记day11

    2024-03-21 00:20:01       34 阅读
  3. C语言学习笔记day12

    2024-03-21 00:20:01       40 阅读
  4. C语言学习笔记day14

    2024-03-21 00:20:01       34 阅读
  5. C语言学习笔记day13

    2024-03-21 00:20:01       35 阅读
  6. C语言学习笔记day15

    2024-03-21 00:20:01       39 阅读
  7. C语言学习笔记day16

    2024-03-21 00:20:01       39 阅读
  8. C语言学习笔记day2

    2024-03-21 00:20:01       36 阅读
  9. C语言学习笔记day7

    2024-03-21 00:20:01       37 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-21 00:20:01       75 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-21 00:20:01       80 阅读
  3. 在Django里面运行非项目文件

    2024-03-21 00:20:01       64 阅读
  4. Python语言-面向对象

    2024-03-21 00:20:01       75 阅读

热门阅读

  1. 在AI中无所不在的微积分

    2024-03-21 00:20:01       39 阅读
  2. 如何防御XSS攻击

    2024-03-21 00:20:01       35 阅读
  3. LeetCode1492. The kth Factor of n

    2024-03-21 00:20:01       42 阅读
  4. 如何在 Flutter 中实现地理定位和地图功能?

    2024-03-21 00:20:01       35 阅读
  5. Linux命令-dhclient命令(动态获取或释放IP地址)

    2024-03-21 00:20:01       40 阅读
  6. 一篇文章搞懂vue基础(上)

    2024-03-21 00:20:01       33 阅读
  7. stm32F407+ESP8266+AT指令+阿里云+代码进阶版(4)

    2024-03-21 00:20:01       35 阅读
  8. ARM汇编程序设计 注释 “每日读书“

    2024-03-21 00:20:01       39 阅读
  9. 彻底讲透:mysql mvcc原理

    2024-03-21 00:20:01       39 阅读
  10. 数据结构-哈希表(二)

    2024-03-21 00:20:01       41 阅读
  11. Linux:线程池的创建和基本使用

    2024-03-21 00:20:01       31 阅读
  12. Hugging Face推出开源ChatGPT竞争对手:HuggingChat

    2024-03-21 00:20:01       36 阅读