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

6指针答案.doc

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

本章要求 掌握指针与指针变量的概念,指针与地址运算符; 掌握指针变量的定义和引用方法; 掌握指针变量与数组、字符串之间的联系; 掌握指针变量作函数的参数的用法; 指针数组、指向指针的指针; 掌握函数指针、返回指针函数的定义方法。 重要考点提示: 对指针概念的理解; 指针做函数的参数; 字符类指针的操作; 对指针使用的理解。 选择题 1.下列各选项中赋值表达式正确的是(A )。 假设有定义 :int k, *q; q=(k+1) q=k; q=k *q=k; 2.以下程序中调用scanf函数给变量a输入数据的方法是错误的,其错误的原因是( B )。 main() { int *p, *q, a, b; p=a; printf(“input a:”); scanf(“%d”,*p); /*写出正确的?*/ } *p表示的是指针变量p的地址 *p表示的是变量a的值,而不是变量a的地址 *p表示的是指针变量p的值 *p只能用来说明p是一个指针变量 3.已知:int a, *p=a; 则下列函数调用中错误的是( ) scanf(“%d”,a); scanf(“%d”,p); printf(“%d”,a); printf(“%d”,p); 4.已知:char c, *p=c, *q;选择正确的语句( C )。 p*=3; p/=q; p+=3; p+=q; 5.设有说明int (*ptr)[M]; 其中的标识符ptr是( C ) M个指向整形变量的指针 指向M个整形变量的函数指针 一个指向具有M个整形元素的一维数组的指针 具有M个指针元素的一维数组的指针 6.已知:char s[10],*p=s;则在下列语句中,错误的语句是( B ) p=s+5 s=p+s; s[2]=p[4]; *p=s[0] 已知:char s[100]; int i; 则在下列引用数组元素的语句中。错误的表示形式是( D )。 s[i+10] *(s+i) *(i+s) *((s++)+i) 8.已知:char s[20]= “programming”, *ps=s;则不能引用字母O的表达式( A ) ps+2 s[2] ps[2] ps+=2,*ps 9.已知:char **s ;正确的语句是( B ) s=“computer”; *s=“computer”; **s=“computer”; *s=‘A’ 10.已知: char c[8]= “beijing”,*s=c; int i; 则下面的输出语句中,错误的是( B )。 printf(“%s\n”,s); printf(“%s\n”,*s); for(i=0;i7;i++) printf(“%c”,c[i]); for(i=0;i7;i++) printf(“%c\n”,s[i]); 11.已知:char *aa[2]={“abcd”, “ABCD”};则以下说法正确的是( D )。 aa数组元素的值分别是“abcd”和“ABCD” aa是指针变量,它指向含有两个数组元素的字符型一维数组 aa数组的两个元素分别存放的是含有4个字符的一维字符数组的地址 aa数组的两个元素中各自存放了字符‘a’和‘A’的地址 12.已知:int a[3][4], *p=a[0][0]; p+=6;那么*p和( C , D)的值相同。 *(a+6) *(a[0]+6) *(a[1]+2) a[1][2] 13.已知:int a[]={1,2,3,4},*p=a[1];则执行语句y=(*--p)++ ;之后,变量y的值为( A ). (A) 1 (B) 2 (C) 3 (D) 4 14.已知:int a[2][3]={2,4,6,8,10,12};则正确表示数组元素地址的是( A ) *(a+1) *(a[1]+2) a[1]+3 a[0][0] 15.若有以下定义和语句,则对a数组元素的正确引用为( C )。 int a[2][3], (*p)[3]; p=a; (A)(p+1)[0] (B) *(*(p+2)+1) (C) *(p[1]+1) (D) p[1]+2 16.若有 int a[][4]={1,2,3,4,5,6,7,8,9,10},*p=*(a+1);则值为9的表达式是( B ) p+=3,*p++ p+=4, *(p++) p+=4,*++p; p+=4,++*p 17.如有语句int x,y=0,z,*p[3]; p[0]=x;p[1]=y;p[2]=z;以下表达式中有语法错的是( B ) (A) y++ (B) p

文档评论(0)

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

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

1亿VIP精品文档

相关文档