作业帮 > 综合 > 作业

c语言这道题怎么做3、 使用C语言编写一个程序,回答这些问题:(1) 在一个有30名学生的班级里,两个学生的生日是同一天

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/06/01 15:18:21
c语言这道题怎么做
3、 使用C语言编写一个程序,回答这些问题:
(1) 在一个有30名学生的班级里,两个学生的生日是同一天的概率有多大?
(2) 如果一群人中两个成员的生日是同一天的概率为50%,那么这个人群应该有多少人?为了回答这个个问题,对程序进行修改,把人数作为一个命令行参数,把当天的时间作为随机数生成函数的种子,数次运行这个程序,以获得这个概率较为精确的估计值。
(3) 取30个随机数,并把它们对365取模,分别表示一年内的各天(忽略闰年)。然后对这些值进行检查,看看有没有相同的。重复这个测试10 000次,对这个频率作一个估计。
理论结果:
#include
int main()
{
int i;
double p = 1;
for(i=0;i=365)
{
printf("%d人的测试中,存在2人同一天生日的概率是1\n",n);
}
else
{
p = (int*)malloc(sizeof(int)*n);
t = num;
stat = 0;
while(t--)
{
repeat = 0;
for(i=0;i