因此,赋值是编写一个java program
,使用if语句声明50 elements
类型为double
的数组alpha。初始化数组,使第一个25
元素等于到索引变量的平方,最后25个元素等于索引变量的三倍。
这是我的代码:
int i=0;
int count=0;
double[] alpha= new double [50];
for (i=0; i<alpha.length; i++)
{
if (alpha.length<25)
alpha[i]= i*i;
System.out.print(alpha[i] + " ");
if (alpha.length>=25)
alpha[i]= 3*i;
System.out.print(alpha[i] + " ");
count++;
if (count==10){
System.out.println("\n");
count=0;
问题是我可以让代码的最后一部分工作
if (alpha.length>=25) alpha[i]= 3*i
但代码的第一部分并不起作用。我得到了答案:
0.0 0.0 0.0 3.0 0.0 6.0 0.0 9.0 0.0 12.0 0.0 15.0 0.0 18.0 0.0 21.0 0.0 24.0 0.0 27.0
0.0 30.0 0.0 33.0 0.0 36.0 0.0 39.0 0.0 42.0 0.0 45.0 0.0 48.0 0.0 51.0 0.0 54.0 0.0 57.0 0.0 60.0 0.0 63.0 0.0 66.0 0.0 69.0 0.0 72.0 0.0.
任何人都可以看到有什么问题吗?
答案 0 :(得分:2)
alpha.length将始终大于25.您需要比较i以查看它是否小于或大于25.
答案 1 :(得分:1)
在FOR迭代中,Alpha长度没有变化。你必须比较变量! for(i = 0; i
System.out.print(alpha[i] + " ");
if (i>=25)
alpha[i]= 3*i;
System.out.print(alpha[i] + " ");
count++;
if (count==10){
System.out.println("\n");
count=0;
答案 2 :(得分:1)
这是因为alpha.length>=25
总是 TRUE 而且alpha.length < 25
总是 FALSE ,因为alpha.length
是50。
尝试使用 index i
进行比较。
if (i < 25)
alpha[i] = i * i;
....
....
if (i >= 25)
alpha[i] = 3 * i;
答案 3 :(得分:0)
alpha.length
是数组的长度,总是等于50。
改变您的状况
if (alpha.length<25)
到
if (i<25)
同样改变
if(alpha.length&gt; = 25)
以强>
if(i> = 25)