C语言教程:字符型数组与字符串

需积分: 0 1 下载量 114 浏览量 更新于2024-08-02 收藏 331KB PPT 举报
"这篇资源是关于C语言教程的第五章,主要讲解了数组,特别是字符型数组和字符串以及相关的字符串处理函数。通过示例代码介绍了如何操作字符型数组,包括如何存储和输出字符串。" 在C语言中,数组是一种非常重要的数据结构,允许我们存储一组相同类型的数据。在第五章中,我们专注于字符型数组和字符串,这是C语言处理文本数据的基础。 5.2 字符型数组 字符型数组是由字符组成的数组,每个元素都是`char`类型,对应一个ASCII码值。例如,我们可以创建一个字符数组来存储单词"Goodluck": ```c char a[9]; a[0]='G'; a[1]='o'; a[2]='o'; a[3]='d'; a[4]=''; a[5]='l'; a[6]='u'; a[7]='c'; a[8]='k'; ``` 在这里,我们逐个为数组元素赋值,注意空字符`' '`也需要一个位置。字符型数组的定义格式如下: ```c char 数组名[字符个数]; ``` 在输出字符数组时,由于它们是`char`类型,应使用`%c`作为输出格式: ```c for(i=0; i<=8; i++) printf("%c", a[i]); ``` 5.2.2 字符串 在C语言中,字符串本质上是字符型数组,通常以空字符`'\0'`作为结束标志。例如: ```c char str[] = "Hello"; ``` 这里的字符串"Hello"在内存中会占据6个字节,包括结束的空字符。字符串常量可以自动在末尾添加`'\0'`,而字符数组在初始化时需要显式提供。 5.2.3 字符串处理函数 C标准库提供了若干处理字符串的函数,如`strlen()`计算字符串长度,`strcpy()`复制字符串,`strcat()`连接字符串,`strcmp()`比较字符串等。这些函数极大地便利了对字符串的操作: ```c char str1[20] = "C Programming"; char str2[20] = "is Fun"; strcpy(str1, "C "); // 复制"C "到str1 strcat(str1, str2); // 连接str1和str2 if(strcmp(str1, "C Programming is Fun") == 0) { printf("Strings are equal."); } else { printf("Strings are not equal."); } ``` 总结,字符型数组和字符串是C语言处理文本数据的基本工具。理解它们的定义、初始化、赋值和使用字符串处理函数的方法对于深入学习C语言至关重要。通过实践和编程练习,你可以更熟练地掌握这些概念。