之前写了一个C程序,用的VC6.0,在别人机子上运行显示线程错误。加上不兼容win7,还有fortran的原因,最终导致了我放弃了VC6.0.费劲周章安装上了VS2010.
算法虽然不算合理,至少基本没有Bug了。
C |copy code |?
01 #include<stdio.h>
02 #include<time.h>
03 #include<stdlib.h>
04 void main()05 {
06 srand((unsigned)time(NULL));07 int xx[3][3]={{0,-1,1},{1,0,-1},{-1,1,0}};08 int p,c,n=3,x1=1,x2=1,x3=1,k;09 float l=0.0,t;10 printf("1,剪子;2,包袱;3,锤;0,退出:\n");11 do
12 {
13 printf("请输入你的结果:");14 scanf("%d",&p);15 c=rand()%3+1;16 t=c/3.0;17 if(t<(1.0*x1/n))18 c=3;19 else
20 {
21 if(t>(1.0*(x2+x1)/n))22 c=2;23 else
24 c=1;25 }
26 switch(p)27 {
28 case 0:break;29 case 1:k=xx[c-1][p-1];x1++;n++;break;30 case 2:k=xx[c-1][p-1];x2++;n++;break;31 case 3:k=xx[c-1][p-1];x3++;n++;break;32 default:33 printf("输入有误,请重新输入:\n");break;34 }
35 switch(k)36 {
37 case 1:printf("你赢了!\n"),l++;break;38 case -1:printf("你输了!\n");break;39 case 0:printf("平局!\n");break;40 }
41 }while(p!=0);42 printf("一共进行了%d场比赛,胜率为:%f.\n",n,l/n);43 }
再次吐槽一下VC6.0,老掉牙的东西该抛弃了。。。 0
管理员 hsyyf: 2011年10月30日 下午12:40 ∇地下2层
管理员 hsyyf: 2011年10月25日 上午7:31 ∇地下2层
管理员 hsyyf: 2011年10月25日 上午8:20 ∇地下1层
管理员 hsyyf: 2011年10月24日 下午1:02 ∇地下1层
管理员 hsyyf: 2011年10月24日 下午1:06 ∇地下3层