我正在尝试自学编码,我偶然发现了一个我不理解的例子。有人能给我一个概述这段代码应该做什么?我对int a[]和后面的int a[I]有点困惑。我知道数组是什么,但有人能解释一下在这种情况下它是如何使用的吗?提前谢谢你。
public class all {
public int select(int a[],int n,int x)
{
int i=0;
while(i<n && a[i]<x)
{
if(a[i]<0)
a[i]=-a[i];
i++;
}
return(a[i-1]);
}
}
This
if(a[i]<0)
a[i]=-a[i];
i++;
是这样的吗
if(a[i]<0) {
a[i]=-a[i];
}
i++;
a[i]
->位置i的值,放入数组
if(a[i]<0) {
->如果位置i的值小于0,也是负数
a[i]=-a[i];
->用反号替换
i++
->增量循环计数器
这里做的同样是:负数转换成正数。
while(i<n && a[i]<x) ->
i = loop counter;如果I小于n,并且数组中位置I的值小于x,则进入循环。
return(a[i-1]);
->返回最后一个被检入while循环的值
该方法获得一个数组和两个int参数n
和x
(作为旁注,我必须说这些名称留下了很多需要的…)不管怎样,让我们看看有什么理由。它们都在while循环中使用。条件i<n
告诉我们,使用n
作为迭代的上限,而条件a[i]<x
告诉我们,使用x
作为数组中值的上限。
select
方法接收数组,int arg指定迭代上限,int arg指定cell-value-upper-limit。遍历数组,直到到达由iteration-upper-limit指定的位置,或者到达一个单元格值超过cell-value-upper-limit(以先到的为准)
你能继续说循环里面在做什么吗?
1.) a[]是数组的声明。Size未定义
2)。在a[i]中,i是数组的索引号…
a[]
是一个数组,我们不知道它的长度。n
必须小于a[]
的长度,否则会抛出异常。如果它从第一个元素到最后一个元素遍历,直到其中一个元素大于x
。它返回遍历过的元素的绝对值