文档详情

c语言课件(字符串).ppt

发布:2017-12-15约4.53千字共27页下载文档
文本预览下载声明
字符串 字符串 字符串与字符数组 字符数组的定义和初始化 字符串的输入与输出 指针与字符串 程序设计举例 简介 字符串与字符数组 在C语言中,字符串是存储在字符数组中并用空字符(’\0’)结束的字符序列。 字符数组的初始化 给字符数组的全部元素赋初值 字符数组的初始化 给字符数组的部分元素赋初值 字符数组的初始化 给全部元素赋初值时,可以不指定长度 字符数组的初始化 用字符串常量给字符数组赋初值 字符串的输入输出 字符串的输入输出有几种方式 用格式输入输出函数逐个字符输入输出 %c 用格式输入输出函数作为整体输入输出 %s 用字符串输入输出函数作为整体输入输出 gets() puts() 字符串的输入输出 用%c逐个字符的输入输出 举例(cw1101.c) 字符串的输入输出 用%s实现字符串作为整体一次性的输入输出 举例(cw1102.c) 字符串的输入输出 用标准库提供的字符串输入输出函数 举例(cw1103.c) 指针与字符串 字符串指针 指向字符串(字符数组)字符指针。 指针与字符串 字符数组和指针 比较 指针与字符串 字符数组和指针 比较 指针与字符串 案例分析 问题:字符串的拷贝。 字符和字符串标准库函数 字符函数:ctype.h 字符串函数:string.h 常用的函数 strcat(字符数组名1, 字符串2) strcpy(字符数组名1, 字符串2) strcmp(字符串1, 字符串2) strlen(字符串) strlwr(字符数组名) strupr(字符数组名) 字符串转换库:stdlib.h 把数字字符串转换成整数和浮点数 案例分析(一) 问题 输入一行字符,统计其中有多少个单词,单词之间用空格隔开。 分析 逐一检测字符,遇到单词的第一个字符就计数。 单词的第一个字符是一个非空格字符,且其前一个字符是空格。 定义一个标记变量。 记住当前字符的前一个字符(最近检测的)是否是空格。 案例分析(一) 设计 定义标记变量 word 0 最近检测的字符是空格 期待新单词出现 1 最近检测的字符不是空格 正在读单词 期待单词的结束 案例分析(一) 源代码(cw1104.c) 案例分析(一) 源代码 案例分析(二) 问题 编程实现strcat()函数的功能。 任意输入两个字符串,将它们连接成一个字符串。 分析 案例分析(二) 源代码(cw1105.c) 案例分析(三) 问题 输入一字符串,再输入一个字符,要求程序将字符串中该字符删去。 分析 案例分析(三) 源代码(cw1106.c) 案例分析(三) 源代码 小结 C语言用字符数组来保存字符串。 C系统提供了较多的字符和字符串标准库函数。 C语言程序设计 字符串 char name[20]; char names[30][20]; … name 字符串名,即字符数组名,就是该字符数组第一个元素的地址 name[0] name[1] name[19] 字符串 char a[5]={‘C’,’h’,’i’,’n’,’a’}; ‘a’ ‘n’ ‘i’ ‘h’ ‘C’ a[4] a[3] a[2] a[1] a[0] 第十一讲 字符串 char a[5]={‘C’,’h’,’i’}; ‘\0’ ‘\0’ ‘i’ ‘h’ ‘C’ a[4] a[3] a[2] a[1] a[0] 缺省的初值为 ‘\0’ 字符串 char a[ ]={‘C’,’h’,’i’,’n’,’a’}; ‘a’ ‘n’ ‘i’ ‘h’ ‘C’ a[4] a[3] a[2] a[1] a[0] char a[5]={‘C’,’h’,’i’,’n’,’a’}; 字符串 char a[ ] = {“China”}; char a[ ] = “China”; char a[6] = {“China”}; char a[6] = “China”; ‘\0’ ‘a’ ‘n’ ‘i’ ‘h’ ‘C’ a[5] a[4] a[3] a[2] a[1] a[0] 来自字符串常量的 结束字符 ‘\0’ 。 字符串 字符串 #include stdio.h #define MAX 5 void main() { int n; char c[MAX]; printf(Input %d characters:\n,MAX); for (n=0;nMAX;n++) scanf(%c,c[n]); printf(Show the %d characters:\n,MAX); for (n=0;nMAX;n++) printf(%c,c[n]); } 字符串 #include stdio.h #define MAX 5 void main() { char c[MAX
显示全部
相似文档