C语言指针-练习

C语言指针-练习

ID:38024832

大小:63.00 KB

页数:6页

时间:2019-05-24

C语言指针-练习_第1页
C语言指针-练习_第2页
C语言指针-练习_第3页
C语言指针-练习_第4页
C语言指针-练习_第5页
资源描述:

《C语言指针-练习》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、复习题(二)一、基础题1、设有:intk[]={2,4,6,8,10,12},*p=k+2;表达式*(p+2)*p[2]的值:100。2、设有:inta[10],*p1,*p2;则执行语句:p1=a;p2=&a[5];则p2-p1的值:5。3、设有:intx[]={4,3,2,1},q,*p=&x[1];则执行语句:q=(*--p)++;后;变量q的值为4。4、设有:int*p,a=10,b=1;则执行以下语句:p=&a;a=*p+b;后;a的值为:11。5、下列程序段的输出结果是2,1。intk=1,j=2,*p=&k,*q=p;p=&j;printf("

2、%d,%d",*p,*q);6、设x为整型变量,p为指向整型的指针变量,则让p指向x变量的赋值表达式是P=&x。7、设有变量定义:floatd[]={1.0,2.0,3.0,4.0,5.0},*p=d+3;请写出printf("%f%f",*p,d[0]);的输出结果为:4.0和1.0。8、设有变量定义如下:chars[]="Hello!",*p=s;inti;执行完for(i=0;*(p+i);i++);后,变量i的值是_6_;*(p+i)的值是’’_。9、函数voidf(chars[],chart[]){intk=0;while(s[k]=t[k

3、])k++;}等价于voidf(char*s,char*t)1、{while(*s++=*t++);}二、选择题1、下面的程序段用来定义指针并赋值,请选出语法正确的程序段(C)。A)int*p;scanf(“%d”,p);B)int*s,k;*s=100;C)int*s,k;D)int*s,kchar*p,*c;char*p,*c;s=&k;p=&c;s=&k;p=&c;6*p=’a’;s=p;*s=1;2、程序段:int*p,a,b=1;p=&a;*p=10;a=*p+b;执行后,a的值(B)。A)12B)11C)10D)编译出错3、若定义:inti,j=

4、2,*p=&i;则能完成i=j赋值的功能的语句是(B)。A)i=*p;B)*p=*&j;C)i=&j;D)i=**p;4、若定义:double*p,a;则下列能通过scanf()正确输入项读入数据的程序段是(D)。A)*p=&a;scanf(“%lf”,p);B)p=a;scanf(“%f”,p);C)p=&a;scanf(“%lf”,a);D)p=&a;scanf(“%lf”,p);5、若有以下定义语句:inta[]={1,2,3,4,5,6,7,8,9,10},*p=a;则值为3的表达式是(D)。A)p+=2,++*pB)p+=2,*++pC)p+=3,

5、*p++D)p+=2,*(p++)6、设p1和p2是指向同一个int型一维数组的指针变量,k为int型变量,则下列不能正确执行的语句是(B)。A)k=*p1+*p2;B)p2=k;C)p1=p2;D)k=*p1*(*p2);7、设有以下定义:inta[]={6,7,8,9,10};int*p;则下列程序的输出结果为(D)。p=a;*(p+2)+=2;printf(“%d,%d”,*p,*(p+2));A)8,10B)6,8C)7,9D)6,108、下面程序输出结果是(C)。main(){inta[]={2,4,6,8,10};inty=1,x,*p;p=

6、&a[1];for(x=0;x<3;x++)y+=*(p+x);printf(“%d”,y);}A)17B)18C)19D)209、下列程序输出数组中的最大值,由s指针指向该元素,则在if语句中的判断表达式应该是(B)。voidmain()6{inta[10]={6,7,2,9,1,10,5,8,4,3},*p,*s;for(p=a,s=a;p-a<10;p++)if()s=p;printf(“Themax:%d”,*s);}A)p>sB)*p>*sC)a[p]>a[s]D)p-a>p-s10、以下选项中,错误的赋值是(A)。A)chars1[10]

7、;s1=”Ctest”;B)chars2[]={‘C’,’t’,’e’,’s’,’t’};C)chars3[20]=”Ctest”;D)char*s[4]=”Ctest”;11、若有以下定义:chars[20]=”programming”,*ps=s;则下列不能代表字符’o’的表达式是(A)。A)ps+2B)s[2]C)ps[2]D)ps+=2,*ps12、若有定义和语句:int**pp,*p,a=10,b=20;pp=&p;p=&a;p=&b;printf(“%d%d”,*p,**pp);则输出结果是(D)。A)1020B)1010C)2010D)

8、202013、下面程序的输出是(A)。chars[]

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

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

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