C语言第讲指针与字符串(字符数组).pptVIP

C语言第讲指针与字符串(字符数组).ppt

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言第讲指针与字符串(字符数组).ppt

6.2.3 指针与字符串(字符数组) 例1: 输出字符串 ▲字符指针(变量)与字符数组的区别 例: 统计字符串中的各元音字母的个数(P182 例6.15) 2. 字符串指针做函数参数(见P183 表6-2) 6.2.4 指针数组 2、用指针数组处理多字符串 2、指针数组访问二维数组 6.3 指针与函数 举例:求a、b的最大值。 6.3.2 返回指针的函数 例: 输入一个1~7之间的整数,输出对应的星期名。 6.3.3 main函数的参数 举例:编程显示命令行输入的参数。 **举例:在字符串中查找特定的字符。 ★ 课堂作业: ★ 思考题: 编程题: * 合肥工业大学 WANGJINLING ① C语言用字符数组存放字符串。 ▲字符数组:元素个数确定,一般用下标控制循环。 ▲字符串:有效字符个数由‘\0’确定,用结束符‘\0’控制循环。 ② 字符数组名和字符串的值都是地址(字符串的首地址 ) 1、字符串的访问方法: ▲ 直接引用字符串: char *chp,ch[ ]=”abcde”; /*定义字符指针和字符数组*/ chp=ch; /*指针指向字符数组*/ putchar( *(chp+2)); /*通过指针引用数组元素*/ printf(“%s,%s”,ch+1,chp+2); ▲ 引用字符数组: char *chp; /*说明字符指针*/ chp=“Hello!”; /*指针指向字符串*/ puts(chp); /*通过指针引用字符串*/ 字符指针可直接指向字符串:char *chp=“Hello!”; 输出 ?? 无名一维字符数组 ’\0’ #includestdio.h void main() { char s[ ]=“computer”, *ps=s ; while(*ps!=‘\0’) { putchar(*ps); ps++; } } main( ) { char str[80], *p, ch; int i=0; p=str; gets(p); ch=getchar(); for( ; *p!=‘\0’;p++) if(*p!=ch) str[i++]=*p; str[i]=‘\0’; printf(“The new string is:%s\n”,str); } 例2:在输入的字符串中删除指定的字符 2000H p str[0] str[1] str[2] \0 2000H 2001H 2002H 2003H 2004H 2005H 2006H ch 0 i 运行程序: abcdef c · · · 2000H str a b d e f \0 a b c d e f c str printf(“%s”,ps); 或: puts(ps) The new string is: abdef 字符指针与字符数组:两者均可存储和运算字符串。 主要区别: ① 存储格式不同: 字符指针变量中存放的是字符串的首地址(2字节);而字符数组中存放的是整个字符串(一个数组元素存放一个字符)。 ② 性质不同:字符数组名是地址常量,不能改变(指向首字符); 字符指针是地址变量,可以改变(指向不同的字符)。 ③ 赋值方式不同: 字符指针 char *ps=“Hello”; char *ps; ps=“Hello”; 字符数组 char st[ ]=“Hello”; × char st[80]; st=“Hello” 或:st[ ]=“Hello” 用循环逐个赋值或用strcpy()函数赋值 #includestdio.h void main(void) { char str[80],*p; int a=0,e=0,i=0,o=0,u=0; gets(str); for(p=str;*p!=\0;p++) { switch(*p) { case a: case A: a++; break; case e: case E: e++; break; case i: case I:

文档评论(0)

rewfdgd + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档