早教吧 育儿知识 作业答案 考试题库 百科 知识分享

c语言问题求助!1,已知:inta[]={1,2,3,4},y,*p=a;则执行语句y=(*++p)--;之后,数组a各元素的值变为,变量y的值是。2,已知:inta[]={1,3,5,7},y*p=a;为使变量y的值为3,下列语句正确

题目详情
c语言问题求助!
1,已知:int a[]={1,2,3,4}, y, *p=a;则执行语句y = (*++p)--;之后, 数组a各元素的值变为______,变量y的值是____。
2,已知:int a[ ]={1,3,5,7}, y *p= a;为使变量y的值为3,下列语句正确的是____。
A) y=++*p++; B) y=++(*p++); C) y=(++*p)++; D) y=(*++p)++;
这两个题目感到很困惑,请各位大虾帮忙解释一下,最好能详细一点,谢过!
▼优质解答
答案和解析
1、 a[]={1,1,3,4 } ; y=2; ++ 和* 是同优先级,结合方式从右到左,y = (*++p)--;这个语句执行过程是:p开始指向a[0] ,++p 后 p指向a[1], (*++p)就是a[1]的值, ,y就等于2了,然后a[1]的值--,所以 a[1]就变成1了
2、A选项 y = 2; B 选项 Y = 2; C选项 ++*p这个写法就不对 D选项 y= 3; 还是 ++ 和*的优先级考虑好,以及++ ,--的运算方法 ,看书吧,不打字了。
看了 c语言问题求助!1,已知:i...的网友还看了以下: