收藏 分享(赏)

第 8 章字符与字符串g.ppt

上传人:gnk289057 文档编号:12294634 上传时间:2021-12-10 格式:PPT 页数:18 大小:1.44MB
下载 相关 举报
第 8 章字符与字符串g.ppt_第1页
第1页 / 共18页
第 8 章字符与字符串g.ppt_第2页
第2页 / 共18页
第 8 章字符与字符串g.ppt_第3页
第3页 / 共18页
第 8 章字符与字符串g.ppt_第4页
第4页 / 共18页
第 8 章字符与字符串g.ppt_第5页
第5页 / 共18页
点击查看更多>>
资源描述

1、第8章字符与字符串 指针与字符串字符串表示形式用字符数组实现 例main charstring IloveChina printf s n string printf s n string 7 用字符指针实现 例main char string IloveChina printf s n string string 7 while string putchar string 0 string 字符指针初始化 把字符串首地址赋给string char string string IloveChina string 0 字符指针变量与字符数组char cp 与charstr 20 str由若干元素

2、组成 每个元素放一个字符 而cp中存放字符串首地址charstr 20 str IloveChina char cp cp IloveChina str是地址常量 cp是地址变量cp接受键入字符串时 必须先开辟存储空间 例charstr 10 scanf s str 而char cp scanf s cp 改为 char cp str 10 cp str scanf s cp 字符串与数组关系字符串用一维字符数组存放字符数组具有一维数组的所有特点数组名是指向数组首地址的地址常量数组元素的引用方法可用指针法和下标法数组名作函数参数是地址传递等区别存储格式 字符串结束标志赋值方式与初始化输入输出方

3、式 s c charstr Hello charstr Hello charstr H e l l o char cp Hello inta 1 2 3 4 5 int p 1 2 3 4 5 charstr 10 cp inta 10 p str Hello cp Hello a 1 2 3 4 5 p 1 2 3 4 5 scanf s str printf s str gets str puts str 字符指针 char p p Iamastudent 定义字符数组时 在编译时为数组分配内存 而定义一个指向字符的指针变量 则只分配一个存放指针变量的内存 指针变量 必须初始化后才能使用

4、charstr 10 scanf s str char p scanf s p char p p char malloc 20 scanf s p free p stdlib h 1 字符串拷贝函数strcpy a char strcpy char s1 char s2 功能 将s2所指向的字符串复制到s1所指向的字符数组中 然后返回s1的地址值 eg char strcpy s1 s2 char s1 s2 char p q p s1 q s2 while p q returns1 2 字符串连接函数strcat a char strcat char s1 char s2 功能 将s2字符串

5、添加到s1字符串的后面 然后返回s1的地址值 eg char strcat s1 s2 char s1 s2 char p s1 while p 0 p while p s2 returns1 3 字符串比较函数strcmp a intstrcmp char s1 char s2 功能 比较两个字符串大小 返回值为0 则串1 串2 返回值为正数 则串1 串2 返回值为负数 则串1 串2 eg strcmp char s1 char s2 while s1 s2 if s1 0 return0 s1 s2 return s1 s2 例 下列程序的输出结果是main char p1 p2 str

6、50 xyz p1 abcd p2 ABCD strcpy str 2 strcat p1 2 p2 1 printf s str A xyabcABB abcABzC ABabczD xycdBCD 函数库为ctype hintisalpha intch 若ch是字母 A Z a z 返回非0值 否则返回0intisalnum intch 若ch是字母 A Z a z 或数字 0 9 返回非0值 否则返回0intisascii intch 若ch是字符 ASCII码中的0 127 返回非0值 否则返回0intiscntrl intch 若ch是作废字符 0 x7F 或普通控制字符 0 x00

7、 0 x1F 返回非0值 否则返回0intisdigit intch 若ch是数字 0 9 返回非0值 否则返回0intisgraph intch 若ch是可打印字符 不含空格 0 x21 0 x7E 返回非0值 否则返回0intislower intch 若ch是小写字母 a z 返回非0值 否则返回0intisprint intch 若ch是可打印字符 含空格 0 x20 0 x7E 返回非0值 否则返回0intispunct intch 若ch是标点字符 0 x00 0 x1F 返回非0值 否则返回0intisspace intch 若ch是空格 水平制表符 t 回车符 r 走纸换行 f

8、 垂直制表符 v 换行符 n 返回非0值 否则返回0intisupper intch 若ch是大写字母 A Z 返回非0值 否则返回0intisxdigit intch 若ch是16进制数 0 9 A F a f 返回非0值 否则返回0inttolower intch 若ch是大写字母 A Z 返回相应的小写字母 a z inttoupper intch 若ch是小写字母 a z 返回相应的大写字母 A Z 函数库为stdlib hdoubleatof char nptr 将字符串nptr转换成浮点数并返回这个浮点数intatoi char nptr 将字符串nptr转换成整数并返回这个整数l

9、ongatol char nptr 将字符串nptr转换成长整数并返回这个整数char ultoa unsignedlongvalue char string intradix 将无符号整型数value转换成字符串并返回该字符串 radix为转换时所用基数char ltoa longvalue char string intradix 将长整型数value转换成字符串并返回该字符串 radix为转换时所用基数char itoa intvalue char string intradix 将整数value转换成字符串存入string radix为转换时所用基数intsystem char com

10、mand 将MSDOS命令command传递给DOS执行 str 字符串操作函数charstpcpy char dest constchar src 将字符串src复制到destcharstrcat char dest constchar src 将字符串src添加到dest末尾charstrchr constchar s intc 检索并返回字符c在字符串s中第一次出现的位置intstrcmp constchar s1 constchar s2 比较字符串s1与s2的大小 并返回s1 s2charstrcpy char dest constchar src 将字符串src复制到des 例 建

11、立给定范围的子目录 include stdio h include stdlib h include string h main chars1 10 s2 10 s 20 intbeg end i puts begin gets s1 puts end gets s2 beg atol s1 end atol s2 for i beg i end i strcpy s md ltoa i s1 10 strcat s s1 system s 编程题请编一个函数intfun charss 它的功能是 把ss字符串中的字符按逆序存放 例如 若输入字符串为ABCDEFG 则逆置后的字符串为GFEDC

12、BA 请勿改动主函数main和其它函数中的任何内容 仅在函数fun的花括号中填入你编写的若干语句 include include includeintfun charp voidmain chars 80 printf nPleaseenterastring gets s fun s printf nThenewstringis puts s getch intfun charp intn i j charc n strlen p for i n 1 j 0 i j i j c p i p i p j p j c returnn 用递归法将字符串反向输出 includevoidfun char s chart if s t s fun s putchar t voidmain chara 12345678 fun a 作业 p283 8 68 248 34

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报