srand((unsigned)time(NULL))
int m,r=0
m=rand()%10
if(m==1||m==2||m==3||m==4||m==5||m==6||m==7)
{
r=r+1
}
这段代码中,执行r=r+1的概率就是0.7
希望可以帮到你
我想是因为for (i=1b>=1i++)这一句无效。
前面b=0,循环条件是b>=1,所以不循环的。
另外b=b+0.1*pow(0.9,i-1)这句的0.1后面应该加上f,否则类型不对。
这个是改动过的代码
#include <stdio.h>
#include <math.h>
int main()
{
int i
long double b
b=0
for (i=1b<=1i++)
{
b=b+0.1f*pow(0.9,i-1)
}
printf("%d\n", i)
return 0
}
时间有些晚了,答题有点仓促,不知道能不能行,如果出现问题,希望海涵。