1楼:忧郁王子
第二题中,d选项代表anscii码为0的字符,即空字符;第八题中,注意while表达式里是一个赋值语句=,而不是等于==,所以会一直先赋值为1,再减1等于0,这样循环下去。
c语言选择题8,9题,求大神给个具体解答思路和解析,谢谢了,**等。
2楼:匿名用户
8. 假定 a 为一个整数类型的数组名,整数类型的长度为 2,则元素 a[4] 的地址比 a 数组的首地址大 8 个字节
解析:&a[4] 比 &a[0] 大 4 个元素的大小,而一个元素是 2 字节,所以 &a[4] - &a[0] == 8
9. 假定 s 被定义为指针类型 char * 的变量,初始指向的字符串为 "hello world!",若要使变量 p 指向 s 所指向的字符串,则 p 应定义为 char *p = s;
解析:b 选项中 char *p = &s;,该句无意义,由于 s 已经是一个 char * 变量了,再进行 & 操作符只会使它变为一个 char ** 的表达式,赋值到 p 中。
c 选项中 char *p; p = *s;,该句无意义,只是把一个 char 表达式强制转换成 char * 表达式赋值到 p 中。
d 选项中 char *p; p = &s;,同 b。
所以应选 a。
3楼:匿名用户
第八题:a数组的首地址是a[0],a[4]的地址当然是a[4],因为题目告诉
你了,整形类型的长度是 2,并且a[4]-a[0]=4,a[4]比a[0]大四个空间,注意是空间而不是字节数,所以要算字 节数的话要乘以它的长度,4x2=8,所以选d。
第九题:你要好好学学c语言的指针了,指针变量指向字符串用两种方式,一种就是a选项的指 针初始化,另一种就是先定义再赋值,比如说这个题目的另一种方式是: char *p;p=s;
希望能够帮到你
c语言选择题234题,求大神帮忙解答,给出具体解题分析和解题思路,谢谢了,**等。
4楼:学渣还是学霸
2、当x和y同小于等于0时,值为真,否则为假。只有d符合。
3、a、2&3=10&11=10=2
b、1<<1=10=2
c、a==2,当a等于2时为真,a不等于2时为假d、1^3=1^11=10=2
4、这句话的意思是p指向a数组中下标为1的元素,也就是3
c语言选择题第4,5,8题,求大神帮忙**解答一下,写出解题过程和解题思路。
5楼:
此题x=y==z后少了分号。a正确,1。因为前一名使z和y都为10,后一句==的优先级比=高,所以造价为x=(y==z);,而y==z是成立的(都是10),所以y==z的逻辑结果是1,把1赋给x就使x最后为1了。
c语言写程序运行结果的题,请大神帮忙,给个解题分析和解题思路,感谢
6楼:风〖离〗蓝
你那个adds函数里的m=,n=3中间这个逗号是不是误打的哟,,如果是m=n=3
分析如下:
第一次调用adds函数回: x=5,答 y=-1m=n=3;
n*=++m实际为: n=n*(++m)即n=3*(3+1) 即n=12,此时经过++m后,m=4
m=n%x+y++实际为: m=(12%5)+(-1+1) 即m=2
返回m的值2赋值给c,即第一次调用adds后打印c的值=2第二次调用时需要注意的是m和n的值在第一次调用后没变m=2, n=12
然后再以上面地方法分析即可
7楼:路盲瞎
题目倒数第五行有问题 无解
C语言选择题,求详解,C语言,题目中的选择题,求详细解析
1楼 匿名用户 正确答案是a a p是字符串指针,用法没有问题 b a是字符数组,不能作为左值被赋值,语法错误 c和d p a是字符类型,不是指针类型,却被赋了一个指针类型的值,肯定得不到预期的结果 2楼 拥抱 选项a是正确的。 解释如下 p是字符串指针,它是一个变量,可以被赋值,指向新的地址。 a...
求C语言大神,帮忙解释一下这道题的选项,刚入门C语言
1楼 匿名用户 a选项2的二进制是010,5的二进制是101,所以2与5的结果是0,即条件为假,所以不能形成死循环 bwhile中是逗号表达式,取最后一个表达式3的值为真,所以是死循环 cd中 0 是字符的ascii值为0的转义字符,所以为假,不构成死循环条件 2楼 天云一号 a2 5 0 所以不会...
请大家帮忙看看这道C语言题,请大家帮我看看这道C语言题目,谢谢了!!求回文数?
1楼 樣小樣 1 fun函数返回值是指针a 一个地址 而从if r 0 a s 这里可以看出a就是字符串t最后一次出现时的地址。 2 两个p是不同的变量! 知识漏点 此程序中 主函数的p有效范围只在主函数,用来接收返回值 p fun s t 此程序中 fun函数的p有效范围只在fun函数上,用来接收...