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

第六章.指针.ppt

  1. 1、本文档共63页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第六章.指针

C语言程序设计;指针(pointer)的概念;指针变量;指针变量的赋值;指针变量的赋值;指针变量的赋值;指针变量的赋值;指针变量的引用;main() { int a=10,*p1,*p2; p1=a,p2=p1; *p1=20; *p2=*p1+*p2+a; a=*p1+*p2; printf(%d,%d,%d\n,a,*p1,*p2); };以下程序输出结果是?;指向指针的指针变量;指向一维数组的指针;例如 有下面程序段: int a[6]={1,2,3,4,5,6},*p=a; /*假如数组a的首地址是1000*/;指针变量的运算;指针变量的运算;指针变量的运算;以下程序输出结果是?;以下程序输出结果是?;指向二维数组的指针;a[0][0];例:若有定义int a[3][5],i,j;(且0=i3,0=j5),则a[i][j]地址不正确的表示是? A) a[i][j] B) a[i]+j C) *(a+i)+j D) *(*(a+i)+j);main() { int i,j,a[][5]={1,2,3,4,5,6,7,8,9,10,1l,12,13,14,15}; printf(%5d, *(a[1]+4)); printf(%5d\n,--*(*a+3)); (*(a+1))[1] += 5; *(a[0][0]+5*2+3) = 55; for(i=0;i3;i++) { for(j=0;j5;j++)printf(%5d,a[i][j]); printf(\n); } };指向二维数组元素的指针变量;例:若有以下定义和语句,则对a数组元素地址的引用,正确的是? int a[3][5],*p; p=a[0]; A) p[0] B) *(p+1) C) p+2*5+3 D) (p+1)[0];2、通过指向数组元素的指针变量存取二维数组元素 ;指向行数组的指针变量(数组指针);例:若有以下定义和语句,则对a数组元素地址的引用,正确的是? int a[3][5],(*p)[5]; p=a; A) *(p+3) B) p[3] C) p[1]+1 D) (p+1)+2;3、通过指向一维数组的指针变量(数组指针)存取二维数组元素 ;指针数组;例:若有以下定义和语句,则对a数组元素地址的引用,不正确的是? int a[][5]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15},i; int *p[3]; for(i=0;i3;i++) p[i]=a[i]; A) p[0] B) *(p+1) C) *(p[0]+1) D) (p+1)[0];4、通过指针数组存取二维数组元素 ;字符串与指针;字符数组;字符数组的初始化;字符数组的初始化;字符数组的输入输出;字符数组的输入输出;以下程序的输出结果是?;从键盘输入abcdefg回车,则以下程序的输出结果是?;字符指针;以下程序的输出结果是?;以下程序的输出结果是?;例6.25 删除一个字符串中所有的空格字符。;例6.27 将一个字符串反向。;字符数组和字符指针的对比;3) char s[50];s=“Ok!”; 此处第二条??句是非法的,数组名s是数组的首地址,不能被赋值 4) char s[300];scanf(%s,s); 此处的scanf函数的用法是正确的,系统自动在输入的字符串最后加\0表示字符串结束 5) char s[300];s是数组名,是数组的首地址,是地址常量,其值不可改变;字符串处理函数;例6.21 利用字符指针把字符串s1复制到字符串s2。;字符串处理函数;#includestdio.h #includestring.h main() { int a,b,c; a=strcmp(abc,abc); b=strcmp(abc,abebc); c=strcmp(abc0,abc); printf(%d,%d,%d\n,a,b,c); if(strcmp(Hello,Hello)==0) printf(OK!\n); };例6.22 利用字符指针比较字符串s1,s2的大小。;字符串处理函数;\0;字符串处理函数;例 利用字符指针求字符串s1的长度。;字符串处理函数;例6.24 将字符串s1中所有大写字母转换成小写字母。;二维字符数组(字符串数组);#include stdio.h void main() { char week[7][10]= {Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,“Saturday}; printf

文档评论(0)

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

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

1亿VIP精品文档

相关文档