C语言中字符数组的赋值与输出解析

需积分: 9 2 下载量 153 浏览量 更新于2024-07-14 收藏 3.75MB PPT 举报
这篇内容主要讲解了C语言中字符数组的赋值与输出,以及与之相关的选择结构。在二级C语言考试中,这部分是重要的考点。 在C语言中,字符数组用于存储字符串,字符串是由字符组成的序列,以'\0'(空字符)作为结束标志。以下是一些常见的字符数组赋值方法: 1. 直接逐个字符赋值:`char str[10]={'s','t', 'r', 'i','n','g','\0'};` 2. 使用初始化列表:`char str1[]={'s','t', 'r', 'i','n','g','\0'};` 这种方式和第一种基本相同,但长度会自动适应字符串的长度。 3. 用双引号直接赋值:`char str2[10]={"string"};` 这种方式会将字符串"string"拷贝到数组中,包括结束符'\0'。 4. 与方法3类似,`char str3[10]="string";` 也是将字符串"string"赋值给数组,但这种方法更常用。 5. 动态分配空间的字符数组:`char str4[]="string";` 类似于方法3,但长度会根据字符串自动调整。 在输出字符数组中的字符串时,通常使用`printf`函数,格式控制符`%s`用于输出字符串。例如: ```c printf("(1)%s\n",str); printf("(2)%s\n",str1); printf("(3)%s\n",str2); printf("(4)%s\n",str3); printf("(5)%s\n",str4); ``` 这些语句会依次输出字符串,遇到'\0'时停止。 `puts`函数也可以用来输出字符串,它会在遇到'\0'时自动添加换行符,如: ```c puts(str); puts(str1); ``` 需要注意的是,字符串赋值给字符数组时有一些限制,如以下赋值方式是错误的: ```c str5=“string”; // 错误,不能直接赋值给数组 str5[]=“string”; // 错误,非法的语法 str5[20]=“string”; // 错误,不能直接赋值给单个元素 ``` 在选择结构部分,复习了`if`语句、`if-else`语句、`switch-case`语句、`for`循环、`while`循环和`do-while`循环。`for`循环包含三个表达式,分别用于初始化、条件判断和更新循环变量。`while`和`do-while`循环的区别在于`do-while`至少会执行一次。`break`语句用于跳出最内层循环或`switch`结构,而`continue`语句则跳过当前循环体的剩余部分,进入下一次循环。 在程序书写格式方面,应保持代码的整洁和规范,这对于程序的可读性和维护性至关重要。 最后,文章提到了数组的使用,数组是一组相同类型数据的有序集合。一维数组的定义格式为`datatype arrayName[size];`,初始化可以使用大括号{},例如: ```c int emp_code[5] = {1299, 1499, 1699, 1899, 2099}; ``` 数组的元素通过下标访问,下标从0开始。数组在内存中是连续存储的,所有元素都必须是相同类型。在实际编程中,数组是一种非常实用的数据结构,用于批量处理和存储数据。