ImageVerifierCode 换一换
格式:PPT , 页数:16 ,大小:135.01KB ,
文档编号:5857335      下载积分:20 文币
快捷下载
登录下载
邮箱/手机:
温馨提示:
系统将以此处填写的邮箱或者手机号生成账号和密码,方便再次下载。 如填写123,账号和密码都是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

优惠套餐
 

温馨提示:若手机下载失败,请复制以下地址【https://www.163wenku.com/d-5857335.html】到电脑浏览器->登陆(账号密码均为手机号或邮箱;不要扫码登陆)->重新下载(不再收费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  
下载须知

1: 试题类文档的标题没说有答案,则无答案;主观题也可能无答案。PPT的音视频可能无法播放。 请谨慎下单,一旦售出,概不退换。
2: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
3: 本文为用户(ziliao2023)主动上传,所有收益归该用户。163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

1,本文(C语言程序设计26指针习题课课件.ppt)为本站会员(ziliao2023)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!

C语言程序设计26指针习题课课件.ppt

1、1.假如假如p是一个指针变量,下列表达式中正确的是是一个指针变量,下列表达式中正确的是_。A*(p-)-=2 B(+p)+C+(p+)D+p+2.假定有数组假定有数组a37,下列表达式中下列表达式中_是错误的。是错误的。A *(*a+2)B*(*(a+1)C*(&a00+2)D *(a+2)5答案:答案:A答案:答案:D练习题练习题3.对表达式对表达式 double (*f)(int,char*)的正确理解为的正确理解为_。A f 是一个返回双精度指针的函数是一个返回双精度指针的函数 B f 是一个需要两个参数的函数是一个需要两个参数的函数,该函数为该函数为double型型 C 该函数是一个返

2、回该函数是一个返回double型的需要两个参数的双精度指针型的需要两个参数的双精度指针 D f 是一个需要两个参数的返回是一个需要两个参数的返回double型的函数指针型的函数指针答案:答案:D4.设有设有int a,*p=&a;下列表达式中,不正确表达式是(下列表达式中,不正确表达式是()A&(*p)B&(*a)C *(&p)D *(&a)5.已知已知int a55,int(*pa)5;正确赋值语句是(正确赋值语句是()A pa=a1;B pa=*(a+1);C pa=&(a+1);D pa=a+1;答案:答案:B答案:答案:D6.假定有数组假定有数组int a44,下列表达式中下列表达式中

3、_不是不是a23的地址。的地址。A a2+3 B *(a+2)+3 C&a23 D *(a2+3)答案:答案:D7.已知函数已知函数fp原型是:原型是:int fp(double*(*)10),下列数组下列数组_可作为参数可作为参数:A double*arr10;B double*arr510;C double arr510;D double*arr10;8.假定有假定有int a37,*pt,(*pa)7;下列语句下列语句_是错误的。是错误的。A pt=&a00;B pt=a0;C pa=a;D pt=a;答案:答案:B答案:答案:D9.对表达式对表达式 char*(*pa3)(char*)

4、的正确理解为的正确理解为_。A pa 是一个返指针的函数数组,需要一个字符指针参数是一个返指针的函数数组,需要一个字符指针参数 B pa 是一个需要字符指针参数的函数是一个需要字符指针参数的函数,该函数返回该函数返回char*型型 C 该函数是一个返回该函数是一个返回char*型的需要一个型的需要一个char*参数指针数组参数指针数组 D 由由3个指针组成的数组,每个指针指向返回个指针组成的数组,每个指针指向返回char*型,需要型,需要char*型参数的函数型参数的函数答案:答案:D10.假如有语句假如有语句char*s1=“abc”;char s2=“xyz”;下列下列_语句是错误的。语句

5、是错误的。A*s1+;B*s2+;C*(s1+1);D*(s2+1);11.执行下列语句后,屏幕上输出的是执行下列语句后,屏幕上输出的是_。#define TEST char s=“xyz”,*p=s;#ifndef TEST while(*p+);while(-p=s)printf(“%c”,*p);#else while(*p)printf(“%c”,*p+);#endif A xyz B zyx C 无输出无输出 D 乱码乱码答案:答案:B答案:答案:A12.对表达式对表达式 int*(*fp5)(char*)的正确理解为的正确理解为_。A fp 是一个返指针的函数,需要一个字符型指针参

6、数是一个返指针的函数,需要一个字符型指针参数 B fp 是一个需要字符型指针参数的函数是一个需要字符型指针参数的函数,该函数返回该函数返回int*型型 C fp是一个指向一个返回是一个指向一个返回int*型的需要一个型的需要一个char*参数的函数参数的函数指针指针 D fp 是一个指针数组、数组的元素是指向返回是一个指针数组、数组的元素是指向返回int*,需要需要char*做参数的函数的指针做参数的函数的指针答案:答案:D13.已知函数已知函数fn原型是:原型是:char*fn(char*(*)(char),char*),且且有有char*v1;char*v2;char*fp(char);正

7、确的函数调用语句是(正确的函数调用语句是()A fn(fp(3),v2);B fn(v1,v2);C fn(fp,&v2);D fn(fp,v1);答案:答案:D14.设有设有int arr33,*p,(*pa)3;表达式表达式()的类型是的类型是int*型型:A arr B&arr0 C&arr00;D pa答案:答案:C改错改错1./*strcmp:return 0 if s 0 if st*/#include int strcmp(char*s,char*t)for(;*s=*t;s+,t+)if(*s=0)return 0;return*(s t);答案:9./*strcmp:retu

8、rn 0 if s 0 if st*/#include int strcmp(char*s,char*t)for(;*s=*t;s+,t+)if(*s=0)return 0;if(*s=0)return*(s t);return*s *t;改错改错2.下列函数的功能是用冒泡法对下列函数的功能是用冒泡法对6个字符串由小到大排序。个字符串由小到大排序。void bubblesort(int*a6)int i,j;char*p;for(j=0;j 5;j+)for(i=j+1;i 0)p=*(a+j);*(a+j)=a+i;*(a+I)=p;答案:void bubblesort(char*a6)in

9、t i,j;char*p;for(j=0;j 5;j+)for(i=j+1;i 0)if(strcmp(*(a+j),*(a+i)0)p=*(a+j);*(a+j)=a+i;*(a+i)=p;*(a+j)=*(a+i);改错改错3.函数函数revs将一个字符串反转将一个字符串反转void revs(char*s)char t,*p=s;while(*p+);p-;while(p-s)t=*p;*p=*s;*s=t;答案:void revs(char*s)char t,*p=s;while(*p+);p-;while(p-s)改为 (-p s)t=*p;*p=*s;*s=t;*s+=t;或*s=

10、t;s+;改错改错4.下列程序的功能是将两个字符串链接起来下列程序的功能是将两个字符串链接起来#include void strcat(char*s,char*t)for(;*s+;);s+;while(*s=*t)s+;t+;答案:#include void strcat(char*s,char*t)for(;*s+;);s+;删除该行while(*s=*t)将s+;t+;用 扩起来 s+;t+;改错改错5.函数函数double fn(int*x)的功能是计算整型数组的功能是计算整型数组x中所有正中所有正数的平均值并返回。该数组用数的平均值并返回。该数组用0作为结束标志。作为结束标志。dou

11、ble fn(int*x)int sum=0.0;int c=0;while(*x)if(*x 0)sum+=*x;c+;x+;sum=c;return sum;答案:double fn(int*x)int sum=0.0;int c=0;float sum=0.0;while(*x)if(*x 0)sum+=*x;c+;x+;sum=c;return sum;sum/=c;分析下面程序的运行结果分析下面程序的运行结果int a3 3=10,9,8,7,6,5,4,3,2;int *pa3=a0,a1,a2;int *p=a0;main()int i;for(i=0;i3;i+)printf(

12、%dt%dt%dn,*ai,*(*(pa+i),p i);10 10 107 7 94 4 8六六.假定内存的初始分配如下图左方所示,执行下述语句后,假定内存的初始分配如下图左方所示,执行下述语句后,分析内存分配情况分析内存分配情况,将结果写在右边内存示意图相应位置。将结果写在右边内存示意图相应位置。short*pi,*pj,t;long*pl;double*pd;*pd+=(double)*pi;pi=&t;*pi=(short)*pl;pj=pi;*pj/=3;+pj;+*pj;六六.假定内存的初始分配如下图左方所示,执行下述语句后,假定内存的初始分配如下图左方所示,执行下述语句后,分析内

13、存分配情况分析内存分配情况,将结果写在右边内存示意图相应位置。将结果写在右边内存示意图相应位置。short*pi,*pj,t;long*pl;double*pd;*pd+=(double)*pi;pi=&t;*pi=(short)*pl;pj=pi;*pj/=3;+pj;+*pj;编写一个函数编写一个函数delodds。功能是从字符串。功能是从字符串s中删除中删除所有所有ASCII码位奇数的字符,串中剩余字符形成一码位奇数的字符,串中剩余字符形成一个新串放在个新串放在t所指的数组中。函数原型如下:(所指的数组中。函数原型如下:(10分)分)void delidds(char*s,char t)

14、void delodds(char*s,char t)int i,j=0,n;n=strlen(s);for(i=0;i n;i+)if(si%2=0)tj+=si;tj=0;六六.分析下面程序的运行结果分析下面程序的运行结果(10分分)#include void main()char s1=“gawsie”;char s2=“bletonism”;char*ps;int i=0;for(ps=s1;*ps;ps+)if(*ps=a|*ps=e)putchar(*ps);else (*ps)-;putchar(*ps);putchar(n);while(s2i)printf(“%c”,i%3?s2i:*);i+;faavrhee*le*on*sm

侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|