我创建了一个名为a的数组,它可以容纳100个双值,
double a[100];
我将数组a的第一个元素设置为NUM,这是我代码中早期定义的符号常量。
a[0] = NUM
我很好奇我将如何编写一个for循环,将a的每个剩余值设置为前一个元素的值加0.1。例如,数组中的第二个元素是第一个加0.1。我试过了
for(i=1; i<=99; i=+0.1)
但我认为i
答案 0 :(得分:2)
使用i
索引数组,而不是存储应该放在数组上的值。请记住,您可以使用表达式来访问数组,例如a[i - 1]
for (i = 1; i < 100; i++)
a[i] = a[i - 1] + 0.1;
答案 1 :(得分:1)
int i;
for(i = 0; i < 100; i++)
a[i] = NUM + 0.1 * i;
别忘了告诉类型int!
答案 2 :(得分:0)
int i = 0;
for(i = 0; i < 100; i++){
if (i == 0)
a[i] = NUM;
else
a[i] = a[i - 1] + .1;
}
您的数组定义包括该步骤。因此,您的数组将运行大约1000次,分别为1,1.1,1.2,但[1.1]并不是您的数组的有效索引。使用i索引数组,然后检索先前的值以设置下一个。
答案 3 :(得分:0)
从你的问题我可以理解这是你在C / C ++中的第一个程序之一,所以我认为你需要从基本的东西开始,并在优雅地做之前先学习如何正确地做。
for(i = 0; i < ARRAY_SIZE; i++) {
if(i == 0) { // if we are on the first element, set it to NUM
array[i] = NUM;
} else { // otherwise make the sum
array[i] = array[i-1] + STEP;
}
}
在链接中,您会找到我希望能帮助您理解的代码和一些评论。
干杯