C语言教案-第十五周.doc

C语言教案-第十五周.doc

ID:59007154

大小:62.00 KB

页数:4页

时间:2020-09-15

C语言教案-第十五周.doc_第1页
C语言教案-第十五周.doc_第2页
C语言教案-第十五周.doc_第3页
C语言教案-第十五周.doc_第4页
资源描述:

《C语言教案-第十五周.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第8章指针本节题目指针与字符串1:本节主要目的1.1教学目的:1、了解字符串的表示形式2、了解字符串指针作函数参数1.2教学内容:1、字符串的表示形式2、字符串指针作函数参数1.3教学重点:1、了解字符串指针作函数参数1.4教学方法:讲授+演示1.5学习方法:听课+笔记+练习2:引入本课内容:[5分钟]在上一节课,学习了指针与一维数组的各种情况,那么,指针能否指向一个字符串呢?如果可以,是一种什么样的情况呢?今天这节课来学习指针与字符串。3:课程知识点讲解:具体知识点1:字符串的表现形式[15分钟]C语言中,有两种方式可以实现字符串:字符数组、字符指针·案例讲解1:用字符数组存放一个字符

2、串,然后输出该字符串。main(){staticcharstring[]=“IloveChina!”;printf(“%s”,string);}程序说明:string是数组名,代表字符数组的首地址。数组可以用下标访问,也可以用指针访问。如string[4]表示一个元素值是字符v,也可以用*(string+4)来访问,string+4是指向字符v的指针。·案例讲解2:用字符串指针指向一个字符串,然后输出该字符串。main(){char*string=“IloveChina!”;printf(“%s”,string);}程序说明:string是一个指针变量,“IloveChina!”

3、是一个字符串常量。语句char*string=“IloveChina!”;等价于char*string;string=“IloveChina!”它把字符串常量的首地址赋给指针string。不能理解为把字符串常量赋给指针变量。char*string=“IloveChina!”;string字符串IloveChina!从以上两个例子中,可以看到:1、字符数组和字符指针的概念不同。2、字符指针指向字符串,而C语言中,字符串按数组方式处理,因此,字符数组和字符指针的访问方式相同。例如,均可以使用%s格式控制符进行整体输入输出。但应注意,如果不是字符数组,而是整型、实型等数字型数组,不能用%s,只

4、能逐个元素处理。·案例讲解3:将字符串a复制到字符串b。(以下用两种方法实现)方法一:main(){chara[]=“Iamaboy.”;charb[20];inti;for(i=0;*(a+i)!=’’);i++)*(b+i)=*(a+i);*(b+i)=’’;printf(“stringais:%s”,a);printf(“stringbis:”);for(i=0;b[i]!=’’;i++)printf(“%c”,b[i]);printf(“”);}方法二:main(){chara[]=“Iamaboy.”,b[20],*p1,*p2;inti;p1=a;p2=b

5、;for(;*p1!=’’;p1++,p2++)*p2=*p1;*p2=’’;printf(“stringais:%s”,a);printf(“stringbis:”);for(i=0;b[i]!=’’;i++)printf(“%c”,b[i]);printf(“”);}在此案例中,程序完成了两项工作:一是把p1指向的源字符串复制到p2所指向的目标字符串中,二是判断所复制的字符是否为’’,若是则表明源字符串结束,不再循环。否则,p2和p1都加1,指向下一字符。具体知识点2:字符串指针作函数参数[30分钟]将一个字符串从一个函数传递到另一个函数,可以使用传地址的方式

6、,即用字符数组名或字符指针变量作参数。有以下四种情况:实参形参1数组名数组名2数组名字符指针变量3字符指针变量字符指针变量4字符指针变量数组名·案例讲解:用函数调用实现字符串的复制。(1)用字符数组作参数voidcopy_string(charfrom[],charto[]){inti=0;while(from[i]!=''){to[i]=from[i];i++;}to[i]='';}main(){chara[]="Iamateacher.";charb[]="youareastudent.";printf("string_a=%sstring_b=%s",a,b);co

7、py_string(a,b);printf("string_a=%sstring_b=%s",a,b);}使用字符指针可以将main()函数改写为:main(){char*a="Iamateacher.";char*b="youareastudent.";printf("string_a=%sstring_b=%s",a,b);copy_string(a,b);printf("string_a=%sstring_

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。