C语言关于指针的三道简单选择题,来个大神解释下,谢谢

   更新日期:2024.05.21
第一题明显D是答案
第二题明显ACD数组越界错误 正确答案为B
第三题A x[3]为3无疑问,B p1为x[3]的地址 ++是后++不需考虑 也是3 C p1为x[2]地址,后面的++无论括号与否都是表达式执行完最后执行,D 先++之后也是x[3]的地址 明显正确。
所以只有C错误 答案为C

这个题库正确答案都给不出来,显然不值得你去练习,建议换地方做题~
第二题那么明显的大小为10的数组下标最多为9这种题目都答案给错,可见出题者的水平,第一题无论怎样都不可能离开C和D 答案居然为B太侮辱智商。不必纠结了 想学习指针去看C指针与陷阱这本书

  • 18824882882 :c语言选择题。。。会的来。。
    惠爬富2907 :答:已知char *p,*q;选择正确的语句()A.p*=3 //这个就只能理解为p=p*3,指针只允许加减操作 B.p/=q //指针之间不能互相乘除 C.p+=3 //p=p+3,正确 D.p+=q; //只允许指针和常整数之间的加减 所以:答案是c 若有说明:int *p1,*p2,m=5,n;以下均是正确赋值语句的选项是(...
  • 18824882882 :C语言指针选择题
    惠爬富2907 :答:BCD很明显是错误的 B ,数组名不是变量 C a+1和*(a+1)仅数值上相同 a+1类型是int(*)[3], *(a+1)是int D 数组当函数参数时退化为指针,所以指针也可以当实参,而不仅仅是数组 那就只能选A了
  • 18824882882 :c语言,数组指针选择题一枚第11问,谢谢。
    惠爬富2907 :答:B D是一样的,*m *p都是指一个数组元素,相当于sizeof(int)=4 A 是sizoef(p)得到一个指针的空间大小,一般在32位机上是4 C是得到数组m的空间大小,其值是10*sizeof(int)=40与其它三个不同!故选 C
  • 18824882882 :C语言指针题
    惠爬富2907 :答:1. p是指向a地址(内存单元)的一个指针。*p指的是p所指向内存单元里的值,即为a的值,故*p+a 就相当于a+a,结果就为20 2. scanf是格式化输入函数(C语言中的库函数),它需要变量的地址,而p就是指向a的地址的,故此答案是:scanf("%d",p);...
  • 18824882882 :请帮我解释下这几道C语言选择题?
    惠爬富2907 :答:a是一个函数指针。a=fun,a指向了fun,*a具有和fun一样的功能。fun本身的参数是一个int型指针,&c取c的地址,相当于一个指向c指针!(*a)(&c)是对的!第二题:类似菲波纳耶数列,2,2,4,6,10,16~~~。n〉2时,每个数是前两项之和,第一项和第二项都是2!第三题:int x,(*p...
  • 18824882882 :问两道C语言关于指针方面的问题
    惠爬富2907 :答:A) k=*p1+*p2; B)p2=k; C)p1=p2; D)k=*p1*(*p2);这道题目只要知道同类型的才能赋值这规则就行了。p1和p2同为int的指针,所以c是可以的,*p1是p1所指向的int变量,,*p是p2所指向的int变量,所以*p1 *p2 跟k是同类型的,所以A、D是对的,其中D是这样理解的k= (*p1) * ...
  • 18824882882 :C语言选择题
    惠爬富2907 :答:int a,*p,*q; p=q=&a; // 这个应该是正确的 (2)int a,*p,*q; q=&a; p=*q; // p=*q;明显错误 int a=20,*p; *p=a; //*p=a错误,可以改成p=&a就对了,*p是 指针变量p所指向的变量,连地址都没有 ,你用什么东西来指向那个变量。(3)int a=b=c=0,*p; p=&...
  • 18824882882 :求这三道c语言选择题答案,解析,多谢
    惠爬富2907 :答:BBD
  • 18824882882 :C语言指针的理论知识,填空,因为我没有答案所以请大神给出填空答案,有的...
    惠爬富2907 :答:填空题.1、若有定义:charch;(1)使指针p可以指向变量ch的定义语句是___。(2)使指针p指向变量ch的赋值语句是___。(3)通过指针p给变量ch读入... 填空题.1、 若有定义:char ch;(1) 使指针p可以指向变量ch的定义语句是___。(2) 使指针p指向变量ch的赋值语句是___。(3) 通过指针p给变量ch读入字符的...
  • 18824882882 :c语言指针题?
    惠爬富2907 :答:include "stdio.h"int my_search(int *arr, int num, int size){ for (int i = 0; i < size; i++)if (arr[i] == num)return i;return -1;} int main(){ int b[] = { 1,3,6,9,10,13,15,18,19,31,38,39,43,46,79,83,90 };int num = 0;printf("输入待查找的...
  • 相关链接

    欢迎反馈与建议,请联系电邮
    2024 © 视觉网