将随机数排序到箱子中-C
我正在尝试编写一些代码,对生成的随机数进行排序(介于0和1之间),并将其排序到“bin”中,即数组。然后窗口打印出每个箱子中的随机数。希望这有点道理,但我真的很挣扎。我是一个完全的初学者,我完全被卡住了,需要一些关于如何使代码工作以及下一步要去哪里的帮助。这是我到目前为止得到的将随机数排序到箱子中-C,c,sorting,if-statement,for-loop,random,C,Sorting,If Statement,For Loop,Random,我正在尝试编写一些代码,对生成的随机数进行排序(介于0和1之间),并将其排序到“bin”中,即数组。然后窗口打印出每个箱子中的随机数。希望这有点道理,但我真的很挣扎。我是一个完全的初学者,我完全被卡住了,需要一些关于如何使代码工作以及下一步要去哪里的帮助。这是我到目前为止得到的 #include <stdio.h> #include <stdlib.h> int main() { double x,y; int i;
#include <stdio.h>
#include <stdlib.h>
int main()
{
double x,y;
int i;
int data[i];
unsigned int time_ui;
time_ui = (unsigned int)( time(NULL) );
srand(time_ui);
x = rand()/ (double)RAND_MAX;
data[i]=0;
for (i=0; i<10; i++)
{
(x*10)=y;
if ((int)y == i)
{
data[i]+=1;
}
printf("Bin %d contains %d random numbers\n", i, data[i]);
}
return 0;
}
#包括
#包括
int main()
{
双x,y;
int i;
int数据[i];
无符号整数时间;
time_ui=(unsigned int)(time(NULL));
srand(时间);
x=rand()/(双)rand_MAX;
数据[i]=0;
因为(i=0;i我想我明白你想做什么,这是我能想到的
#include <stdio.h>
#include <stdlib.h>
int main()
{
double x,y;
int i;
int data[10]; // you will generate 10 bins
unsigned int time_ui;
time_ui = (unsigned int)( time(NULL) );
srand(time_ui);
for (i =0; i<10; i++) // initialize each bin
{
data[i] = 0;
}
for (i=0; i<100; i++) // generate and examine 100 random you can do it for more
{
x = rand()/(double)RAND_MAX; // generate random number
y = 10 *x; // predict in which bin it will be
data[(int)y]++; // increase that bin by 1
}
for (i =0; i<10; i++) // once done, let's print it out
{
printf("Bin %d contains %d random numbers\n", i, data[i]);
}
return 0;
}
#包括
#包括
int main()
{
双x,y;
int i;
int data[10];//您将生成10个箱子
无符号整数时间;
time_ui=(unsigned int)(time(NULL));
srand(时间);
对于(i=0;iSo)您的问题是什么?哪个部分不工作?您是否收到错误?如果是,请提供它。(x*10)=y;
应该做什么?甚至不应该编译。int i;int data[i]
也很糟糕;也许你需要回到基础上来?不幸的是,你所寻求的帮助太广泛,无法给出简单的答案,因此超出了堆栈溢出的范围。你要求我们完全重写你的程序。请将你的问题缩小到特定的范围,然后重新提问。太棒了,这正是我想要的需要,非常感谢您的帮助。@Alexeslop1:没关系,我们是来互相帮助的
for (i =0; i<10; i++) // once done, let's print it out
{
printf("\t");
for(j = 0; j<data[i]; j++)
{
printf("_ ");
}
printf("\nBin %d\t", i);
for(j = 0; j<data[i]; j++)
{
printf("_|");
}
printf("%d\n", data[i]);
}