收藏 分销(赏)

字符数组.pptx

上传人:可**** 文档编号:961289 上传时间:2024-04-09 格式:PPTX 页数:18 大小:139.30KB 下载积分:10 金币
下载 相关 举报
字符数组.pptx_第1页
第1页 / 共18页
字符数组.pptx_第2页
第2页 / 共18页


点击查看更多>>
资源描述
2024/4/7 周日syiae 计算机基础教研室1主要内容字符数组与其他数组的共性字符数组的特点处理字符串的系统函数处理字符串的典型算法2024/4/7 周日syiae 计算机基础教研室2字符数组C C语言中没有专门的字符串变量,而是将字符语言中没有专门的字符串变量,而是将字符串存入字符数组来处理。串存入字符数组来处理。用一个一维数组来存放一个字符串,每个元素用一个一维数组来存放一个字符串,每个元素存放一个字符。存放一个字符。字符数组是数组的一个特殊情况,定义方法类字符数组是数组的一个特殊情况,定义方法类似,有其特殊的引用方法。似,有其特殊的引用方法。2024/4/7 周日syiae 计算机基础教研室36.1字符数组与其他数组的共性字符数组的定义字符数组的定义例如:例如:char c10;(int c10;)定义定义c为包含为包含10个元素的字符型数组。个元素的字符型数组。c hina定义:定义:char 数组名数组名NM c0=c;c1=h;c2=i;c3=n;c4=a;2024/4/7 周日syiae 计算机基础教研室4字符数组的初始化字符数组的初始化6.2字符数组的特点按元素赋值按元素赋值使用字符串常量赋值使用字符串常量赋值char c10=s,t,o,r,e;char c6=“china”;char c6=“china”;char c=“china”;以字符串方式赋值时,以字符串方式赋值时,必须保证数组元素的个必须保证数组元素的个数数=字符个数字符个数12024/4/7 周日syiae 计算机基础教研室5相关说明 1.字符数组中的每一个元素存放一个字符字符数组中的每一个元素存放一个字符。2.字符数组可以用字符串常量进行初始化字符数组可以用字符串常量进行初始化。例如:例如:char c=“I am happy”;字符数组字符数组c的长度为的长度为11,而不是,而不是10。该赋值等价于:。该赋值等价于:char c=I,a,m,h,a,p,p,y,03.字符串的长度是字符串中有效字符的个字符串的长度是字符串中有效字符的个数数(不包括不包括0),不等于字符数组的长度。,不等于字符数组的长度。2024/4/7 周日syiae 计算机基础教研室6 字符数组的引用与输入和输出 1.用用%c格式符,逐个字符输入和输出。格式符,逐个字符输入和输出。2.用用%s格式符,通过数组名输入和输出。格式符,通过数组名输入和输出。例例1:char c10China;for(i=0;ci!=0;i+)printf(“%c”,ci);也可这样输出:也可这样输出:printf(“s”,c);输出时,遇到结束符输出时,遇到结束符0就停止输出。就停止输出。2024/4/7 周日syiae 计算机基础教研室7例例2:char c10;scanf(“%s”,c);设输入为设输入为happy,则系统自动将,则系统自动将0也存进也存进去。去。例例3:char a”china”;scanf(“%s”,a);printf(“%s”,a);注:如用注:如用s输出,无论数组元素有多少,只要输出,无论数组元素有多少,只要遇到遇到0就结束输出。就结束输出。如:如:char star34=“*”,“*”,“*”;printf(“%sn%sn%sn”,star0,star1,star2);2024/4/7 周日syiae 计算机基础教研室8注意:注意:1.输入项为字符数组名时,不加取地址符号输入项为字符数组名时,不加取地址符号&,因为在,因为在C语言中数组名代表数组的起始地址。语言中数组名代表数组的起始地址。2.输入的字符串中不能有空格,如果输入输入的字符串中不能有空格,如果输入 how are you,则只将,则只将how及及0存进去。存进去。3.如果输入多个字符串,则可用空格隔开。如果输入多个字符串,则可用空格隔开。2024/4/7 周日syiae 计算机基础教研室9 程序举例 用一字符串给字符数组赋初值,然后打印出各用一字符串给字符数组赋初值,然后打印出各元素的元素的ASCII编码值。编码值。#includestdio.hvoid main()char str=This is a sring!;int i=0;while(stri!=0)printf(%c=%dn,stri,stri);i+;printf(%c=%dn,stri,stri);用字符串给字符数组赋用字符串给字符数组赋初值,系统自动加上空字初值,系统自动加上空字符符0(终结符);(终结符);空格字符的空格字符的ASCII码为码为32;0_终结符的终结符的ASCII码为码为0。2024/4/7 周日syiae 计算机基础教研室10从键盘输入一行字符串从键盘输入一行字符串(=a&stri=z)len+;printf(n%d,len);程序举例 2024/4/7 周日syiae 计算机基础教研室116.3常用字符串处理函数 1.puts(字符数组字符数组)作用:将一个字符串输出到终端。作用:将一个字符串输出到终端。例如:例如:char str=“china”;puts(str);输出时将字符串结束标志输出时将字符串结束标志0转换成转换成n(换行换行)。2024/4/7 周日syiae 计算机基础教研室122.gets(字符数组字符数组)作用:从终端输入一个字符串到字符数组。作用:从终端输入一个字符串到字符数组。例如:例如:char str 10;gets(str);注意:用注意:用gets()输入的字符串可以带空格;输入的字符串可以带空格;2024/4/7 周日syiae 计算机基础教研室133.strcat(字符数组字符数组1,字符数组字符数组2)作用:连接两个字符数组中的字符串,把字符串作用:连接两个字符数组中的字符串,把字符串2接到接到字符串字符串1的后面,结果放在字符数组的后面,结果放在字符数组1中。中。例如:例如:char str130Peoples Republic of;char str2 China;strcat(str1,str2);printf(s,str1);输出:输出:Peoples Republic of China说明:连接前两个字符串的后面都有一个说明:连接前两个字符串的后面都有一个0,连接,连接时将字符串时将字符串1后面的后面的0取消,只在新串最后保留一个取消,只在新串最后保留一个0。2024/4/7 周日syiae 计算机基础教研室144.strcpy(字符数组字符数组1,字符串字符串2)作用:将字符串作用:将字符串2复制到字符数组复制到字符数组1中去。中去。例如:例如:char str110,str2 China;strcpy(str1,str2););printf(“%s”,str1);输出结果为:输出结果为:China2024/4/7 周日syiae 计算机基础教研室155.strcmp(字符串字符串1,字符串字符串2)作用:比较字符串作用:比较字符串1和字符串和字符串2比较的规则:即对两个字符串自左至右逐个字符相比比较的规则:即对两个字符串自左至右逐个字符相比(按按ASCII码值大小比较码值大小比较),直到出现不同的字符或遇到,直到出现不同的字符或遇到0为止。为止。如全部字符相同,则认为相等;若出现如全部字符相同,则认为相等;若出现不相同的字符,则以第一个不相同的字符的比较结果为不相同的字符,则以第一个不相同的字符的比较结果为准。比较的结果由函数值带回。准。比较的结果由函数值带回。如果字符串如果字符串1等于字符串等于字符串2,函数值为,函数值为0。如果字符串如果字符串1大于字符串大于字符串2,函数值为一正整数。,函数值为一正整数。如果字符串如果字符串1小于字符串小于字符串2,函数值为一负整数。,函数值为一负整数。2024/4/7 周日syiae 计算机基础教研室16例如:例如:int i;char str1=“china”;i=strcmp(str1,chinese););printf(“%d”,i);输出结果为:输出结果为:-4注意:对两个字符串比较,不能用以下形式:注意:对两个字符串比较,不能用以下形式:if(str1str2)而只能用而只能用 if(strcmp(str1,str2)0)2024/4/7 周日syiae 计算机基础教研室176.strlen(字符数组字符数组)作用:测试字符串长度,函数值为字符串中的实际长度,作用:测试字符串长度,函数值为字符串中的实际长度,不包括不包括0在内。在内。例例1:char str10China;printf(d,strlen(str);输出结果不是输出结果不是10,也不是,也不是6,而是,而是5。也可以直接测字符串常量的长度,也可以直接测字符串常量的长度,例例2:strlen(China)长度为长度为5 strlen(“abcdn”)长度为长度为52024/4/7 周日syiae 计算机基础教研室187.strlwr(字符串字符串)作用:将字符串中大写字母转换成小写字母。作用:将字符串中大写字母转换成小写字母。8.strupr(字符串字符串)作用:将字符串中小写字母转换成大写字母。作用:将字符串中小写字母转换成大写字母。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服