![C语言程序设计第九章指针_第1页](http://file2.renrendoc.com/fileroot_temp3/2021-11/23/6d5ef56b-fbb5-4bb2-84c1-9523190d9cf4/6d5ef56b-fbb5-4bb2-84c1-9523190d9cf41.gif)
![C语言程序设计第九章指针_第2页](http://file2.renrendoc.com/fileroot_temp3/2021-11/23/6d5ef56b-fbb5-4bb2-84c1-9523190d9cf4/6d5ef56b-fbb5-4bb2-84c1-9523190d9cf42.gif)
![C语言程序设计第九章指针_第3页](http://file2.renrendoc.com/fileroot_temp3/2021-11/23/6d5ef56b-fbb5-4bb2-84c1-9523190d9cf4/6d5ef56b-fbb5-4bb2-84c1-9523190d9cf43.gif)
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C语言程序设计 第九章 指针一、 选择题1、指针是一种A 标识符B、变量C、内存地址D、运算符2、显示指针变量P中的值,可以使用命令 A Printf( “ %d ,p); B 、Printf( “%d ,*p); C 、 Printf( “ %d ,*p); D 、Printf( “ %d ,p);3、为指针变量P输入整型变量i的地址,可以使用命令A、Scanf( “ %p,&p); B、*p=i; C 、P=&I;D、*p=&l; 4、 若有定义 void *p;int *q;float *r,下面操作不对的是A、p=q;B、q=r;C、p=r; D 、r=p;5、
2、若有说明#define m 20 int n=10;下面定义不正确的是A、Float sm; B、Float sm*10; C 、Floatsm+n;D、Float sm+10; 6、若有定义 int a=1,2,0;请问 aaa0=A 、0 B、1C、2D、37、若有char s10,*p=s;则下面表达式正确的是A、s=p+s; B 、p=s+10; C、s2=p4; D 、p=s0;&定义整型指针变量 p和q,下面操作不正确的是 A、Int *p,q=null; B 、Int *p,q=null,null;C、Int*p,*q=null,null; D 、Int *p,*q=nu
3、ll;9、若有定义 int a=1,2,3,b3=1,2,3;,请问a=bA、不能比较 B、结果为真 C、结果为假D、结果不确定10、以下程序有错,错误的原因是()。 mainint *p,i;char *q,ch;p=&i; q=&ch; *p=40;*p=*q;.A) p和q的类型不一致,不能执行 *p=*q;语句B) *p中存放的是地址值,因此不能执行 *p=40;语句C) q没有指向具体的存储单元,所以*q没有实际意义D) q虽然指向了具体的存储单元,但该单元中没有确定的值,所以不能执行*p=*q;语句11、已有定义int k=2;int *ptr1,*ptr2; 且p
4、trl和ptr2 均已指向变量 k,下面不能正 确执行的赋值语句是()。A) k=*ptr1+*ptr2;B)ptr2=k;C)p 仁*p2;D)*p仁p2; 12、变量的指针,其含义是指该变量的()。A) 值 B)地址 C)名D) 一个标志13、若已定义int a=5;下面对,两个语句的正确解释是()。(1)int *p=&a;(2) *p=a;A) 语句(1)和中的*p含义相同,都表示给指针变量p赋值B) (1)和 语句的执行结果,都是把变量a的地址值赋给指针变量pC) (1)在对p进行说明的同时进行初始化,使p指向a(2)将变量a的值赋给指针变量p D)(1)在对p进行说明的同
5、时进行初始化,使 p指向a(2)将变量a的值赋于*p 14、若 有语句int *point,a=4; 和point=&a;下面均代表地址的一组选项是。A) a,point,*&aB)&*a, &a,*pointC)*&point,*point,&a D)&a, &*point,point 15、以下程序输出的结果是void main int a=5,*p1,*p2;p仁&a,p2=&p1;(*p1)+;printf( “ dn ” ,*p2);A) 5 B) 4 C) 6 D) 不确定16、若有说 明:int *p
6、,m=5,n;以下正确的程序段是()。A)p=&n;B)p=&n;scanf( “ %d ”,&p);scanf( “ %d ”,*p);C)scanf(“ %cT ,&n); D)p=&n;*p=n; *p=m17、若有说明:int *p1,*p2,m=5,n;以下均是正确赋值语句的选项是()。A)p 仁&m;p2=&p1;B)p 仁&m;p2=&n;*p 仁 *p2;C)p1= &m;p2=p1 D)p 仁&m;*p2=*p1; 18 、已有变量定义和函数调用语句:int a=25; print_val
7、ue(&a);下面函数的正确输出结果是()。 void print_value(int *t) print( “ dn ”,+*x);A)23B)24C)25D)26 19、下面判断正确的是()。A)char * a=” china ” ;等价于 char *a;*a= ” china ” ;B) char str1O=“ china ” ;等价于 charstr1O;str= “china ” ; C)char *s=” china ” ;等价于char *s; s= china ;D) char c4=” abc ” ,d4= ” abc ” ;等价于 charc4=d4=” ab
8、c” ; 20、设 char *s= ” ta017bc” ;则指针变量s指向的字符串所占的字节数是()。A)9B) 5C)6D)721、下面程序段中,for循环的执行次数是()。 char *s= ” ta018bc” ;for ( ;*s!=' 0 ' ;s+) printf( “* ”);A)9B) 5C)6D)7 22、下面能正确进行字符串赋值操作的是()。 A) char s5=“ ABCDE ; B) char5= A' , ' B' , ' C , ' D , ' E' ;C) char *s; s= ” A
9、BCDE' ;D) char *s;s= ” abcde”s+=2; printf( “ %d ,s);A)cde B)字符c'C)字符c '的地址 D)无确定的输出结果 24、设pl和p2是指向同一个字符串的 指针变量,c为字符变量,则以下不能正确执行的赋值 语句是()。A)c=*p1+p2; B)p2=cC) p1=p2D)c=*p1*(*p2); 25、有下面的程序段:chat s= ” china ” ; char *p; p=s;贝U下列叙述正确的是()。A)s和p完全相同B)数组s中的内容和指针变量p中的内容相等C) s数组长度和p所指向的字符串长度相等D)
10、*p与s0相等26、下面程序的运行结果是()。 #include#includemainchar *p1,*p2,str50=” abc” ;p仁” abc ” ; p2= ” abc” ;strcpy(str+1,strcat(p1,p2);printf( “ sn ” ,str);A) abcabcabcB)bcabcabc C) aabcabcD) cabcabc 27、下面程序的运行结果是 ()。 #include main()char str= ” cdalb0 'abc(str); puts(str); abc(char *p)for(i=j=0;*(p+i)!= if(*
11、(p+i)>=' d')'0 ' ;i+)*(p+j)=*(p+i);j+; *(p+j)=0 ' ;A)dalbB)cdC)dlD)c 28、卜面程序运行结果是()°#includefun(char*p)int i,j;char ts81;for(i=0,t=0;pi!='0 ' ;i+=2)int i,j;a') tst=if(! isspace(*p+i)&&(*(p+i)!=strcpy(p,ts);main” ;char str81=“ a b c d ef gfun(str); puts
12、(str);A) abcdegB)bcde C)ABCDED)BCDE29、若有以下定义,则对a数组元素的正确引用是inta5,*p=a;A) *&a5B) a+2 C) *(p+5)D)*(a+2) 30、若有以下定义,则对a数组元素地址的正确引用是()。int a5,*p=a;A) p=5B)*a+1C)&a+1D)&a031、若有定义:int a23;则对数组a的第i行第j列元数值的正确引用为()。A)*(*(i+j)+j)B)(a+i)jC)*(a+i+j)D) *(a+i)+j32、 若有定义:int a23;则对数组a的第i行第j 列元数地址的正确引用为()
13、。A)*(ai+j) B)(a+i)C)*(a+j) D)ai+j33、 若有以下定义和语句,则对a数组元素地址的正确引用是()。 int a23,(*p)3;p=a;A)*(p+2)B)p2C)p1+1D)(p+1)+2 34、若有以下定义和语句,则对a数组元素地址的正确引用是()。 int a23,3 ; p=a;A)0 B)*+1) C)* D)p1+2 35、若有定义:int a5;贝廿a数组中首元素的地址可以表示为()。A)&aB) a+1C) a D) &a1 36、若有定义:int 4;则标识符p()。A)是一个指向整型变量的指针B )是 一个指针数组名C)是一个
14、指针,它指向一个含有四个整型元素的一维 对s数组的第i行第j列元素地址的合法引用为()。ints23=0,3 ; p=s ;A *+j)B)* C)+j D)j38、若有以下定义和赋值语句,则对b数组的第i行第j列元素地址的非法引用为()。int b23=0,3 ; p=b ;A) *+j)B)*C) +jD)j39、以下与 int *q5;等价的定义语句是()。A)int q5B) int*qC)int* ; D)int540、设有以下程序段:char str410=“ first ”,“ second ”,“ third ”,“fourth ” , *strp4 ; int n ;for
15、strp n =str n;若k为int型变量且0 =k4,则对字符串的不正确引 用是()。A)strp B)strkC)strpkD)*strp二、填空题1、二级指针是存放一级指针的 2、指针变量虽然都是存放指针,但 不同3、空指针名称是 ,表示没有指针的一种状态4、函数名和 名可以作为指针常量5、不同类型的指针变量的赋值必须 6、以下的运行结果是 【】。 #include main() int l,k;for(l=0;l#includemainchar *p1,*p2,str50=” abc” ;p仁” abc ” ; p2= ” abc” ;strcpy(str+1,strcat(p1,
16、p2);printf( “ sn ” ,str);A) abcabcabcB)bcabcabcC)aabcabcD)cabcabc 27、下面程序的运行结果是()。#includemain()char str= ” cdalb” abc(str); puts(str); abc(char *p)int i,j;for(i=j=0;*(p+i)!='0 ' ;i+)if(*(p+i)>=' d')*(p+j)=*(p+i);j+;*(p+j)='0 ' ;A)dalbB)cdC)dlD)c 28、卜面程序运行结果是()。#includefun
17、(char*p)int i,j; char ts81;'a' ) tst='0 'A) abcdegB)bcde C)ABCDED)BCDE 29、若有以下定义,则对a数组元素的正确引用是intif(! isspace(*p+i)&&(*(p+i)!=strcpy(p,ts);mainchar str81=“ a b c d ef g ” ;fun(str); puts(str);a5,*p=a;A) *&a5B) a+2 C) *(p+5)D)*(a+2) 30、若有以下定义,则对数组元素地址的正确引用是()。int a5,*p=a;3
18、1、若有定义:int a23;则对数组a的第i行第jA) p=5B)*a+1C)&a+1D)&a0元数值的正确引用为()A)*(*(i+j)+j)B)(a+i)jC)*(a+i+j)D)*(a+i)+j32、若有定义:int a23;则对数组a的第i行第j列元数地址的正确引用为()° A)*(ai+j) B)(a+i)C)*(a+j) D)ai+j33、若有以下定义和语句,则对a数组元素地址的正确引用是()。 int a23,(*p)3;P=a;A)*(p+2)B)p2C)p1+1D)(p+1)+2 34、若有以下定义和语句,则对a数组元素地址的正确引用是()。 in
19、t a23,3 ; p=a;A) 0B) *+1) C)* D)p1+2 35、若有定义:int a5;贝廿a数组中首元素的地址可以表示为()。A)&aB) a+1C) a D) &a1 36、若有定义:int 4;则标识符p()。A)是一个指向整型变量的指针B )是 一个指针数组名C)是一个指针,它指向一个含有四个整型元素的一维 数组D)定义不合法37、若有以下定义和赋值语句,则对s数组的第i行第j列元素地址的合法引用为()。ints23=0, 3 ; p=s ;A) *+j ) B) * C ) +j D ) j38、若有以下定义和赋值语句,则对b数组的第i行第j列元素地址的非法引用为()。int b23=0,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国天然生漆市场调查研究报告
- 2025年中国内饰件市场调查研究报告
- 2025年舞厅效果灯项目可行性研究报告
- 2025至2031年中国对乙酰氨基水杨酸甲酯行业投资前景及策略咨询研究报告
- 2025至2031年中国啤酒过滤耗材行业投资前景及策略咨询研究报告
- 2025年全方位超短网兜项目可行性研究报告
- 2025至2030年防水透湿面料项目投资价值分析报告
- 2025至2030年红色氧化汞项目投资价值分析报告
- 2025至2030年植绒吸塑罩项目投资价值分析报告
- 2025至2030年指针温度调节仪项目投资价值分析报告
- 方志敏《可爱的中国》全文阅读
- 2024年广西区公务员录用考试《行测》真题及答案解析
- DB12-T 3034-2023 建筑消防设施检测服务规范
- 销售人员岗位职责培训
- 助理医师医院协议书(2篇)
- 短暂性脑缺血发作
- 父亲归来那一天(2022年四川广元中考语文试卷记叙文阅读题及答案)
- 小学数学五年级上册奥数应用题100道(含答案)
- 工业机器人编程语言:Epson RC+ 基本指令集教程
- 2024年同等学力申硕统考英语卷
- 2023.05.06-广东省建筑施工安全生产隐患识别图集(高处作业吊篮工程部分)
评论
0/150
提交评论