答案是b。。多维数组的元素是线性存储的。所以在内存中a数组是存放在一片连续的内存空间里则盯。元素的顺序为:a[0][0]
a[0][1]
a[1][0]
a[1][1]
a[2][0]
a[2][1]
。c语言对数组下标越界不作检查,所州局以a[0][2]是合法的。它相当于a[0][1]的下一个元素。而a[0][1]在内存中的下一个元素其实是a[1][0]。册盯让所以a[0][2]=a[1][0]=1
3/2/1,结果是1啦。。
for(k=1;k+1;k++)
中,k=1是设循环的初值,k+1是执行循环的条件,k++是循环的增量。
k=1
时,k+1=2,为非0,C语言中,0代表判茄假,非0代表真。
所以,k=1时往下执行循环,
满足k<4
打印k的值笑返,即1。
break
退出for
循环,下面的printf("%d",k++);
没碰冲饥有执行。
所以,程序的运行结果是1
1,逗号表达式的值是最后一个的值,前面给雹粗行t赋值为1,然后t+5只是做了运算,没有把值赋给t,最凳闹后t自加,但是是后自加,所以先取其值在自加,整个表达式值为1,t为源哗2.
错误为D
原因:要说明这个错误的原因我要先解释下什么叫做函数形参
函数形参就是函数的碰指棚形式参逗亩数
也许这样说你不太明白
举笑则个列子吧
例如:函数:int
Test(int
i)
说明这里的i就是形参
所以D是错误的
可以对调,也慧迹可以写在同一数模行
disc的意思是将b*b-4*a*c运算得到的值赋给disc,也就是说它是前毕并一个变量