计算机二级c语言题目,求这两道题的步骤

如题所述

第一题是1 4 4(不同系统,不同编译器,可能有不同结果,要看学的是哪个)
sizeof()函数是用来显示当前操作数的存储大小的,char为1个比特位,int和float一般是4个比特位,有些编译器int是2个比特位。

第二题是指针的问题
i和j的地址分别给了指针变量p和q,当*p和*q变化时,p和q所指向的变量的值也会变化,即i和j同步变化。
因为*p(就是i,值为3)<*q(就是j,值为5),所以*p=*q(把j的值赋给i)
此时i、j、*p、*q的值均为5,函数返回值为p,函数为指针函数,此时p指向的变量即i值为5,所以*r=5.追问

第一题,二级c,用的是vc6.0,答案给的是4 4 4

咋回事

追答

好吧第一题我没注意指针*。。。
指针变量固定的是4个字节的大小

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-08-23

第一题答案 4,4,4

如下图:

第二题答案之所以是B,因为i自赋值后就没有变过,。看不懂为什么答案提示说i=5,看不懂。

第2个回答  2016-08-22
第一题是4,4,4
因为它输出的是三个指针变量的字节数。不论这指针指向什么类型的数据,全部都是占4个字节的。

第二题的输出是5,5,5,5,5
第3个回答  2016-08-22
第一张,因为都是sizeof的指针,指针的大小就是固定的4
第4个回答  2016-08-22
第一题,p1, p2, p3都是指针,一般都是4个字节,sizeof()是求变量的存储空间,指针也是一种变量
第二题,函数f的作用就是保证s指向的数据不能小于t指向的数据,所以f(p, q)运行之后,p指向的值变成了5,由于p指向的是i变量,所以i的值就变成了5,j的值没有变化,因为运行之后,i=j=5;故选A
第5个回答  2016-08-21
第一个显示出了的是地址值,第二个看不清追问

怎么看不清呢?

追答

第一题的三个数想同

第二个,你在你的手机上能看清不?

相似回答