欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    C语言基础模块4part.ppt

    • 资源ID:6503813       资源大小:292.50KB        全文页数:29页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C语言基础模块4part.ppt

    数组(二),模块4,共 34 页 第 2 页,1 字符与字符串 2 字符数组 3 字符串处理函数4 二维字符数组5 应用实例,字符数据处理,共 34 页 第 3 页,符号常量:以指定符号代表其后的“一串字符”格式:#define 标识符 常量,1 字符与字符串,一、字符型数据,可以是任意类型常量,字符常量:以 括起来的单个字符,开头的字符序列。,例:a,A,n表示换行,r表示回车。,字符串常量:用双引号括起来的字符序列。,例:”Ch”,”123”等。长度不限,末尾加0,字符变量:存放字符常量的变量,用char说明。,共 34 页 第 4 页,1 字符与字符串(续),二、字符串,串长:字符串中所包含的字符数。串结束标记:字符 0 称为串结束标记。,C中的串以 0 结束。,字符串在数组中的存储格式,字符串可以存在一个一维数组中,字符串中的一个字符占用字符数组中一个字节,具有数组特性。字符串实际占有单元的数量等于字符串长度+1。,例如:要定义一个存放字符串“CHINA”的字符数 组c,应定义为:char c6;数组c在内存中实际存放情况为:,共 34 页 第 5 页,串长=5,三、字符数据的输入输出,库函数:getchar(),putchar(ch),从键盘上读一个字符,1 字符与字符串(续),使用getchar()时,可以输入任何字符,允许用户根据自己的要求进行控制与处理,串尾0要自己编程加入。其中ENTER接受为r(回车)。,格式化输入输出函数:scanf();printf();”%c”,共 34 页 第 6 页,格式:数据类型 数组名维数说明;,例:char a4,b10;char c34;表示a数组可以存放4个字符,c数组可以存放12个字符。,例:c34可存放三个字符串,每个字符串最多存放4个字符。,一维字符型数组作为一个字符串变量使用。二维字符型数组相当于一个字符串数组,每行存放 一个字符串。,2 字符数组(续),一、一维字符数组的定义,二、字符数组的用途,共 34 页 第 7 页,8-2 字符数组,三、一维字符数组的初始化,用字符串对字符数组初始化,如:char ch6=CHINA;char ch6=CHINA;/*省略*/char ch=CHINA;/*省略长度值*/,字符数组初始化,用单个字符对字符数组初始化,如:char ch6=C,H,I,N,A,0;,2 字符数组(续),共 34 页 第 8 页,2 字符数组(续),四、一维字符数组的引用,如:char a10=CHINA2000”,b3=“123”;printf(“%cn”,a3);printf(“%sn”,a);,对于字符数组,不仅可以引用它的数组元素,也可以引用整个数组。,共 34 页 第 9 页,2 字符数组(续),static char a3;for(i=0;i3;i+)scanf(%c,输入数据顺序:d o s输出数据顺序:dos,四、字符数组的输入与输出,单字符输入输出(用格式符c控制),共 34 页 第 10 页,static char a7;scanf(%s,a);,2 字符数组(续),字符数组名指明数组首地址,字符串输入输出(用格式符s控制),0不输出,只能输入不包括空格、t和n的字符串自动在串尾加0,printf(%sn,a);,共 34 页 第 11 页,五、字符串在数组中的存储格式,使用字符0作为字符串的结束标记,就使得C语言对字符串的长度没有具体的限制,但字符串的最大长度不能超过存储它的字符数组的长度,否则会造成数组越界错误。,2 字符数组(完),0是在字符串存入字符数组是由系统自动添加的,并不是字符串本身的一部分,在计算串长的时候并不包括 0。,共 34 页 第 12 页,3 字符串处理函数,一、字符串输入输出函数,gets(字符数组名);,由终端输入字符串到字符数组,以换行结束 返回字符数组的首地址,puts(字符数组名);,将以0结束的字符串输出到终端 返回的函数值是字符数组的首地址,共 34 页 第 13 页,3 字符串处理函数(续),格式:strlen(x);,功能:返回x字符串中字符的个数(不包括字符串结束符)。,x是字符串首地址,其形式可以是字符数组或字符指针,也可以是字符常量。,二、求字符串长度的函数,共 34 页 第 14 页,3 字符串处理函数(续),格式:strcat(字符数组1,字符数组2);,功能:连接两个字符数组中的字符串,将串2接在串1后,结果存放在字符数组1中,返回的函数值是字符数组1的首地址。,字符数组1的长度不可缺省,足够大。,三、字符串连接函数,四、字符串复制函数,格式:strcpy(字符数组1,字符数组2);,功能:将串2复制到串1数组中。,共 34 页 第 15 页,程序#include void main()char str1100,str2100;int i,j;printf(”Enter string 1:”);gets(str1);printf(”Enter string 2:”);gets(str2);for(i=0;str1i!=0;i+);/*确定0位置*/for(j=0;(str1i=str2j)!=0;i+,j+);printf(”Output string 1:%sn”,str1);,例8 字符串连接。将串str2连接到串str1之后。根据字符串中 0 的位置进行字符串连接。关键:要用str2的第1个字符覆盖str1的串结束标记0。,a,b,c,d,e,f,g,0,str2,str1,.,.,.,算法:1、查找str1的串结束标记02、从str1的0开始,将str2复制到str1。,3 字符串处理函数(续),共 34 页 第 16 页,例9 字符串复制。将字符串 str1 拷贝到串 str2 中。没有必要复制整个数组,根据字符串中 0 的位置,只对 0 前面的字符进行复制。,#include void main()char str1100,str2100;int i;printf(Enter string 1:);gets(str1);/*输入字符串str1*/for(i=0;(str2i=str1i)!=0;i+);/*复制*/printf(Output string 2:%sn,str2);,a,b,.,.,.,f,g,0,str1,str2,.,.,.,3 字符串处理函数(续),共 34 页 第 17 页,3 字符串处理函数(续),五、字符串比较函数,格式:strcmp(字符数组1,字符数组2);,功能:比较串1和串2,返回结果为:0-相等,正数-串1大,负数-串2大,”abc”与”abc”,相等”abcd”与”abck”,”abcd”小”abc”与”ab”,”abc”大,比较原则:按ASCII码比较,共 34 页 第 18 页,例10 字符串比较。确定字符串大小的基本规则:按照串中对应位置字符的ASCII码值的大小确定大小。例如:”abc”abadef”因为字符 c a#include”stdio.h”void main()char str1100,str2100;int i;printf(Enter string 1:);gets(str1);printf(Enter string 2:);gets(str2);for(i=0;(str1i=str2i),3 字符串处理函数(续),共 34 页 第 19 页,8-3 字符串处理函数,六、大小写字母的转换,1 格式:strlwr(x),功能:把地址为x的字符串中所有大写字母转换成小写字母。x可以是字符数组或字符指针,也可以是字符串常量。调用形式:strlwr(x);,2 格式:strupr(x),功能:把地址为x的字符串中所有小写字母转换成大写字母。x可以是字符数组或字符指针,也可以是字符串常量。调用形式:strupr(x);,3 字符串处理函数(完),共 34 页 第 20 页,8-2 字符数组,一、二维字符数组的定义,如:char a25,b37;,与二维数值数组定义相同,但数据类型为char,4 二维字符数组,共 34 页 第 21 页,8-2 字符数组,二、二维字符数组的初始化,可以在定义的同时初始化,如:char a38=“str1“,”str2”,”string3”;char b 6=“s1“,”s2”,”str3”;,二维字符数组初始化,4 二维字符数组(续),二维字符数组初始化在内存的存储,共 34 页 第 22 页,8-2 字符数组,三、二维字符数组的引用,如:(1)for(i=0;i3;i+)printf(“%sn”,ai);(2)for(i=0;i3;i+)printf(“%cn”,aii);(3)for(i=0;i3;i+)printf(“%sn”,对于二维字符数组,每行可以看做一个字符数组。数组名ai。可以用ai引用i行的字符串,也可以用aij引用i行j列的字符。,4 二维字符数组(完),输出:(1)str1(2)s(3)tr1 str2 t r2 strinf3 r ing3,共 34 页 第 23 页,#include#include void main()char string 100,t;int i,j,n;gets(string);n=strlen(string);for(i=0;i stringj+1)t=stringj;stringj=stringj+1;stringj+1=t;puts(string);,4 应用实例,例11 输入一行字符,将其中的每个字符从小到大排列后输出。,共 34 页 第 24 页,例12 输入五个单词,请将它们按从小到大的顺序排列后输出。#include#include void main()char str 520,t20;int i,j,n;printf(Enter string:n);for(i=0;i 0)strcpy(t,strj);strcpy(strj,strj+1);strcpy(strj+1,t);printf(Result:n);for(i=0;i5;i+)puts(stri);,4 应用实例(续),共 34 页 第 25 页,例13 任意输入一个3位整数,取其各位数字的和,再取这个和被7除的余数,输出余数对应的星期(英文单词)。如:输入123,(1+2+3)%7=6,则输出saturday。对3位整数n,拆分其百、十和个位的方法:百位:i=n/100;十位:j=n/10%10;个位:k=n%10;,4 应用实例(续),共 34 页 第 26 页,例13:#include“stdio.h”main()char week79=Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday;int i,j,k,a,n;do printf(Please input a number:n);scanf(%d,4 应用实例(续),共 34 页 第 27 页,#include“stdio.h”#include“string.h”void main()char str80,c;int i,j,n;printf(Enter string:);gets(str);n=strlen(str);for(i=0,j=n-1;ij;i+,j-)c=stri;stri=strj;strj=c;printf(Result:);puts(str);,4 应用实例,例14 输入一行字符串,将其反序后再输出。,共 34 页 第 28 页,#include“stdio.h”#include“string.h”void main()char str180,str280,str80;int i,j,n;printf(Enter string1:);gets(str1);printf(Enter string2:);gets(str2);n=0;for(i=0,j=0;str1i!=0,4 应用实例,例15 输入两个已经按从小到大顺序排列好的字符串,编写一个合并两个字符串的函数,使合并后的字符串,仍然是从小到大排列。,共 34 页 第 29 页,#include#include void main()int length;char line100;gets(line);length=0;while(linelength!=0)length+;printf(”String length=%dn”,length);,例16 求字符串的长度根据字符串中 0 的位置来计算字符串长度。若:数组中第 i 个元素为0,则,串长=i。,length=7,4 应用实例,

    注意事项

    本文(C语言基础模块4part.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开