【发布时间】:2014-03-09 22:39:21
【问题描述】:
我有一个程序,它从 25 个人中抽取 20 个样本,然后必须将该样本中的每个数字与一个百分比相关联。
有没有办法通过一个函数创建一个 for 循环,该循环将在我手动执行的情况下运行所有示例?
例如。
int sample1[20]={1,2...20};
...
int sample25[20]={1,7..97};
我有一个 for 循环遍历其中一个数组并将其与包含 500 个数字的更大数组相关联。我需要知道是否有一种方法可以运行 sample1,然后是 2,然后是 3,等等。无需我手动进入函数并放入一个新数组。
或者您可以将数组发送给函数吗?
#include <stdio.h>
int main()
{
int x;
float valid,mean,total=0;
for (x = 0;x < 20; x++)
{
float percent[500]={4.268, 4.014, 3.905, 3.853, 3.765, 3.949, 3.832..etc};
int sample1[20]={66,20,221,321,...};
sample1[x];
valid=percent[sample1[x]-1];
printf("\n%d = %.3f",sample1[x],percent[sample1[x]-1]);
total= total+ percent[sample1[x]-1];
}
mean= total/20;
printf("\n\nThe mean percentage for the sample is %.3f",mean);
return 0;
}
【问题讨论】:
-
是的,有。通过创建一个新的数组(或向量)数组。这正是容器的用途,不要像这样创建多个变量。
-
这里可以使用模板魔法,但我认为你不会满意 :)
-
很容易,如果我只知道背后的逻辑......例如,为什么
sample25[1] == 7和sample25[19] == 97?