//精度有点低啊。。 #include <stdio.h> #include <time.h> const int r=1000; const int lim=100000000; int main() { int cnt=0; srand(time(0)); int i; for (i=1;i<=lim;++i) { long long x=rand()%r+1; long long y=rand()%r+1; if (x*x+y*y<=r*r) ++cnt; } printf("pi=%f",cnt*4.0/lim); return 0; }