c语言中,y[ j ] = -1什么意思?

if (x[i] > av ) y[ j++] = x[ i ] ;
y[ j ] = -1

提问:y[ j ] = -1,数组能为负数?

属于for循环,例如下面的代码:

for(i=j=p;i<N;i++)

if(x[i]>av){

y[j++]=x[i];x[i]=-1;} 就是 如果x[i]比平均数av大 那么就先放到数组y里面(从前往后的放)并将x[i]的值设为-1

for(i=0;i<N;i++)

if(x[i]!=-1)y[j++]=x[i]; 现在已经将x数组里面比平均属大的放到y里并且是左面,现在将x数组里比平均数小的放入y右边 (注应该是y[j++]而不是j[j++])

for(i=0;i<N;i++)x[i]=y[i]; 最后把数组y里的值传给x,那么x就排好顺序了

扩展资料:

for循环语法

1、语句最简形式为:

for( ; ; )

2、一般形式为:

for(单次表达式;条件表达式;末尾循环体)

{

中间循环体;

}

其中,表示式皆可以省略,但分号不可省略,因为“;”可以代表一个空语句,省略了之后语句减少,即为语句格式发生变化,则编译器不能识别而无法进行编译。

for循环小括号里第一个“;”号前为一个为不参与循环的单次表达式,其可作为某一变量的初始化赋值语句, 用来给循环控制变量赋初值; 也可用来计算其它与for循环无关但先于循环部分处理的一个表达式。

参考资料来源:百度百科-for循环

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-08-21
指的是y[]这个数组的第j+1个元素赋值为-1,如果y[]为某些类型的数组如unsigned的话就会出错了。。。本回答被提问者采纳
第2个回答  2012-08-21
可以,当然,得看你定义的是什么数据类型!
y[j] = -1;表示将-1赋值给数组y[ ]第j+1个数组元素.
第3个回答  推荐于2018-03-19
下面主函数应该有个for循环条件为y【j】>=0.所以这条就起了终止的作用,不然后面要一直输出00000000本回答被网友采纳
第4个回答  2012-08-21
数组是一个存放数据的集合,里面存放的数据的类型是由数组的类型限制的,这里的y是一个整数数组吧,所以可以放负数

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网