字符型数组及字符串处理 (2).ppt

上传人:s****8 文档编号:68702830 上传时间:2022-12-29 格式:PPT 页数:20 大小:443.50KB
返回 下载 相关 举报
字符型数组及字符串处理 (2).ppt_第1页
第1页 / 共20页
字符型数组及字符串处理 (2).ppt_第2页
第2页 / 共20页
点击查看更多>>
资源描述

《字符型数组及字符串处理 (2).ppt》由会员分享,可在线阅读,更多相关《字符型数组及字符串处理 (2).ppt(20页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、5.45.5 字符型数组及字符串处理字符型数组及字符串处理引例引例 输输入入一一个个以以回回车车结结束束的的字字符符串串(少少于于10个个字字符),它可由数字和字母组成。符),它可由数字和字母组成。要求将该字符串中数字转换成整数后输出。要求将该字符串中数字转换成整数后输出。#include int main(void)int i,n;char s10;i=0;printf(Enter a string:);/*输入字符串输入字符串*/while(si=getchar()!=n)i+;si=0;n=0;/*/*将字符串转换为整数将字符串转换为整数*/*/for(i=0;si!=0;i+)if(s

2、i=0)n=n*10+(si-0);else break;/*/*非数字字符结束转换非数字字符结束转换*/printf(digit=%dn,n);return 0;源程序源程序Enter a string:123123digit=123Enter a string:12a3digit=12Enter a string:a12digit=0Enter a string:12a312a3digit=123Enter a string:a12a12digit=12i si 0 s0=1 1 s1=2 1.2 s2=a2.3 s3=33.4 s4=0 程序分析程序分析 n=0;for(i=0;si!=

3、0;i+)if(si=0)n=n*10+(si-0);0 1 2 3 s1 2 a 3 0?i si si-0 n=n*10+(si-0)0 1 1 0*10+1=1 1 2 2 1*10+2 =122 a 3 3 3 12*10+3 =123Enter a string:1#2#3digit=?digit=1/指针方式访问数组中字符指针方式访问数组中字符n=0;for(i=0;*(s+i)!=0;i+)if(*(s+i)=0)n=n*10+(*(s+i)-0);下标下标4 0 跳出循环跳出循环一维字符数组一维字符数组n字符串存储和运算用一维字符数组实现。一维字符数组字符串存储和运算用一维字符

4、数组实现。一维字符数组的定义、引用、初始化与其他类型的一维数组相同。的定义、引用、初始化与其他类型的一维数组相同。n定义一个含有定义一个含有5个字符型元素的数组个字符型元素的数组tchar t5;n数组数组t初始化初始化 char t5=H,a,p,p,y;char t =H,a,p,p,y;t0 t1 t4t H a p p y输出数组输出数组 t 的所有元素的所有元素for(i=0;i 对字符数组的操作对字符数组的操作1.字符串的存储字符串的存储初始化初始化字符串存放在一维字符数组中字符串存放在一维字符数组中 char s6=H,a,p,p,y,0;字符数组初始化:用字符串常量赋值字符数组

5、初始化:用字符串常量赋值char s6=Happy;char s =Happy;char s =Happy;数组长度数组长度=字符串的有效长度字符串的有效长度+1char t5;Happy 能存入能存入t吗吗?s0 s1 s5s H a p p y 0字符串的存储字符串的存储char s80=Happy;字符串遇字符串遇 0 结束结束第第一一个个 0 前前面面的的所所有有字字符符和和 0 一一起起构构成成了了字符串字符串 Happy”0 之后的其他数组元素与该字符串无关之后的其他数组元素与该字符串无关 s0 s1 s5s H a p p y 0 s h字符串由有效字符和字符串结束符字符串由有效

6、字符和字符串结束符 0组组成成 2.对字符串的操作对字符串的操作n将字符串放入一维字符数组存储将字符串放入一维字符数组存储n对字符串的操作对字符串的操作=对字符数组的操作对字符数组的操作普普通通字字符符数数组组:数数组组元元素素的的个个数数是是确确定定的的,一一般般用下标控制循环用下标控制循环字字符符串串:没没有有显显式式地地给给出出有有效效字字符符的的个个数数,只只规规定定在在字字符符串串结结束束符符 0 之之前前的的字字符符都都是是字字符符串串的有效字符,一般用结束符的有效字符,一般用结束符 0 来控制循环来控制循环循环条件:循环条件:si!=0 计算字符串的有效长度,并输出该字符串。计算

7、字符串的有效长度,并输出该字符串。字符串的有效长度:有效字符的个数字符串的有效长度:有效字符的个数数组中第一个数组中第一个 0 前面的字符个数前面的字符个数编程:为字符串赋值编程:为字符串赋值“Happy”,并输出。,并输出。计算计算字符串的有效长度字符串的有效长度 s0s1 s5s H a p p y 0 s h#include int main(void)int i ;char s80=Happy;for(i=0;si!=0;i+);/循环体为空语句循环体为空语句 printf(len=%dn,i);for(i=0;si!=0;i+)/输出字符串输出字符串 putchar(si);/单字符

8、的输出函数单字符的输出函数 return 0;源程序源程序 s0s1 s5s H a p p y 0?循环条件循环条件len=5Happy for(i=0;si!=0;i+)putchar(si);3.字符串的输出字符串的输出 s0 s1 s5s H a p p y 0?HappyHappyHappyfor(i=0;i len;i+)putchar(si);puts(s);/整个字符串的输出函数,库函数整个字符串的输出函数,库函数stdio.h,输出到,输出到0字符停止,并把字符停止,并把0字符转换为回车换行输出。字符转换为回车换行输出。1.字符数组初始化字符数组初始化:char s6=Hap

9、py;char s6,*p=s;p=“Happy”;/把字符串常量地址送给把字符串常量地址送给p,s数组没得到值数组没得到值2.逐个赋值逐个赋值:s0=H;s1=a;s5=0;3.输入输入 逐个字符输入逐个字符输入0 代表空操作,无法输入代表空操作,无法输入输入时,设定一个输入时,设定一个输入结束符(如输入结束符(如n),将输入结束符转换为字符串结束符将输入结束符转换为字符串结束符 0整个字符串的输入整个字符串的输入gets(s)/整整个个字字符符串串的的输输入入函函数数,库库函函数数stdio.h,输输入入到到回回车换行符停止,并把为回车换行转换车换行符停止,并把为回车换行转换0字符存储到数

10、组字符存储到数组4.字符串的存储字符串的存储赋值和输入赋值和输入a 2 个个字字符符 a 和和 0a 1 个字符常量个字符常量区分区分a 和和 a输入一个以回车结束的字符串输入一个以回车结束的字符串(少于少于80个字符个字符),统计其中,统计其中数字字符的个数。数字字符的个数。分析:分析:数组长度取上限数组长度取上限80以以 n 做为输入结束符做为输入结束符1。编程实现!。编程实现!2。调用库函数,将大写字母转换为小写字母输出!。调用库函数,将大写字母转换为小写字母输出!5、按一定规则、按一定规则统计字符统计字符#include int main(void)int count,i;char s

11、80;printf(Enter a string:);i=0;while(si=getchar()!=n)i+;si=0;/*输入结束符输入结束符n字符串结束符字符串结束符0*/count=0;for(i=0;si!=0;i+)if(si=0)count+;printf(count=%dn,count);return 0;源程序源程序字符串的输入字符串的输入getchar()/单字符的输单字符的输入函数,库函数入函数,库函数stdio.hEnter a string:Its 512?count=3能省略能省略si=0吗?吗?0 1 2 3 4 5 6 7 8sI t s 5 1 2 0?get

12、s(s);#include int main(void)int i,n;char s10;printf(Enter a string:);/*输入字符串输入字符串*/i=0;while(si=getchar()!=n)i+;si=0;n=0;/*将字符串转换为整数将字符串转换为整数*/for(i=0;si!=0;i+)if(si=0)n=n*10+(si-0);else break;printf(digit=%dn,n);return 0;简化引例简化引例gets(s)Enter a string:123e4digit=12340 1 2 3 s1 2 3 e 4 0?gets(s);实践:任

13、务一实践:任务一(ex04_01.cpp)n编写一个字符串处理程序,程序功能为输编写一个字符串处理程序,程序功能为输入一个字符串,删除其中的数字字符后,入一个字符串,删除其中的数字字符后,全部大写输出。全部大写输出。n提示,字符串全部转成小写函数原型:提示,字符串全部转成小写函数原型:char*strlwr(char*src)n程序的正确运行示例:程序的正确运行示例:输入一个字符串:输入一个字符串:ShangHai2012!输出:输出:shanghai!实践:任务二实践:任务二(ex04_02.cpp)n编写一个字符串处理程序,程序功能为输入两个英编写一个字符串处理程序,程序功能为输入两个英文字符串,取每个字符串的第一个单词组成一个新文字符串,取每个字符串的第一个单词组成一个新的字符串,全部大写输出。的字符串,全部大写输出。n提示,字符串全部转成大写函数原型:提示,字符串全部转成大写函数原型:char*strupr(char*src)n程序的正确运行示例:程序的正确运行示例:输入第一个字符串:输入第一个字符串:my hometown is Shanghai!输入第二个字符串:输入第二个字符串:God talked to you输出:输出:MYGOD

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 生活常识

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁