网站大量收购闲置独家精品文档,联系QQ:2885784924

C语言第6章字符串.ppt

  1. 1、本文档共41页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
字符串内容回顾 6.1字符数组作字符串变量 6.2 指向字符串的指针变量 6.3 字符串操作函数 6.4 指针数组 冒泡排序法思想:假设6个整数为23、1、0、43、-3和7 冒泡排序程序:当 n=6 时,进行程序抽象 字符串数组排序的要点 字符串数组排序的要点 2 指针数组的引用 指针数组的引用 示例 6.4 指针数组 2. 指针的间接引用 float* Arr[3]; *Arr *(Arr+1) *(Arr+2) *(Arr+i) 等价 Arr[i] 要点 ?数组元素是指针 *(Arr+i) 指针 **(Arr+i) 指针数组的示例 6.4 指针数组 利用指针数组和循环语句计算4个int类型变量的最大值。 例6.7 #include<stdio.h> void main() { int x1 =25, x2 = 69, x3 = 13, x4 = 60; int * a[4],k,max; a[0]=&x1;a[1]=&x2; a[2]=&x3;a[3]=&x4; max = * a[0]; for(k=1; k<4;k++) if(max<*a[k]) max=*a[k]; printf(“\n%d”,max); } 3 字符串数组 字符串数组 6.4 指针数组 1. 本质含义 一个指向字符的指针可以引用一个字符串 char *p = “string”; 一个字符类型的指针数组可以引用多个字符串,因此称作字符串数组 引子 要点 字符串数组就是基类型为字符类型的指针数组 理解字符串数组在内存中的存在形式 3 字符串数组 字符串数组 6.4 指针数组 2. 字符串数组的初始化 要义 指向字符类型的指针初始化字符串与数组初始化结合 指针初始 化字符串 char *p = “string”; 初始化 一维数组 int a[4] = {1,2,3,4} char *str[4] = {“one”, ”two”, ”three”, ”four”}; char *str[] = {“one”, ”two”, ”three”, ”four”}; 字符串数组 6.4 指针数组 下述程序片段用于显示几个字符串的“和”。 示例 #include<stdio.h> char *s[]={“This”,“is” ,“a", “string”,“!”}; char sum[81]=“”; for(k=0;k<5;k++) strcat(sum,s[k]); 字符串数组示例 6.4 指针数组 假定有若干个名字组成的字符串,试用气泡排序法对多个字符串按由小到大的顺序排序。 例6.8 分析 定义一个指针数组存储这些字符串 利用气泡排序方法对这些字符串排序(核心) 循环输出排序后的结果 字符串数组示例 6.4 指针数组 7 -3 43 0 1 23 i=0 a[5] a[4] a[3] a[2] a[1] a[0] 7 -3 43 0 23 1 7 -3 43 23 0 1 7 -3 43 23 0 1 7 43 -3 23 0 1 43 7 -3 23 0 1 43 7 -3 23 0 1 43 7 -3 23 1 0 43 7 -3 23 1 0 43 7 23 -3 1 0 43 23 7 -3 1 0 43 23 7 -3 1 0 i=1 i=2 43 23 7 -3 1 0 43 23 7 1 -3 0 43 23 7 1 -3 0 i=3 43 23 7 1 -3 0 43 23 7 1 0 -3 43 23 7 1 0 -3 i=4 43 23 7 1 0 -3 43 23 7 1 0 -3 比较 a[ j ] a[ j+1 ] 如果成立两元素交换 字符串数组示例 6.4 指针数组 i=0 a[5] a[4] a[3] a[2] a[1] a[0] 43 7 -3 23 0 1 43 23 7 -3 1 0 i=1 i=2 43 23 7 1 -3 0 i=3 43 23 7 1 0 -3 i=4 43 23 7 1 0 -3 4 i 控制外层循环: for(i=0;i ;i++) n-1 j 控制内层循环: for(j= ;j ;j++) 0 n-i n-1-i n-i-1 字符串数组示例 #includestdio.h void main( ) { 初始化字符串数组; for(i=0;in-1;i++) { for(j

文档评论(0)

jdy261842 + 关注
实名认证
内容提供者

分享好文档!

1亿VIP精品文档

相关文档