求关于双色球的C程序

来源:百度知道 编辑:UC知道 时间:2024/09/24 05:24:12
双色球的和值就是6个红球加起来的数值。我想要一个这样C程序: 我输入一个和值,然后他可以把所有这个和值的N组号码都排出来。
main()
{ int a,b,c,d,e,f,g;
printf("qing shu ru he zhi a= \n");
scanf("%d",&a);
for(b=1;b<29;b++)
for(c=b+1;c<30;c++)
for(d=c+1;d<31;d++)
for(e=d+1;e<32;e++)
for(f=e+1;f<33;f++)
for(g=f+1;g<34;g++)
if(a==b+c+d+e+f+g)
printf("b=%d,c=%d,d=%d,e=%d,f=%d,g=%d\n",b,c,d,e,f,g);
}

以上就是双色球和值的C程序代码,不过执行之后只能看到最后的几行,而且不可把结果复制下来。如果要把执行的所有结果保存下来应该怎么办?请高人指点。谢谢!

我一般是用JAVA或者VB,C不怎么用,但还是可以帮你看看的。调试之后,确实调出的窗口运行之后只显示最后几行,上面的结果被吞掉了。
其实我也没有直接的方法,但你如果只是想得到任意的结果,而不是把这个程序整合到其它地方的话,我可以提供给你一个迂回的方法。
先把程序改写成:
main(int argc,char *argv[])
{ int a,b,c,d,e,f,g;
/*printf("qing shu ru he zhi a= \n");
scanf("%d",&a); */
a=atoi(argv[1]);
for(b=1;b<29;b++)
for(c=b+1;c<30;c++)
for(d=c+1;d<31;d++)
for(e=d+1;e<32;e++)
for(f=e+1;f<33;f++)
for(g=f+1;g<34;g++)
if(a==b+c+d+e+f+g)
printf("b=%d,c=%d,d=%d,e=%d,f=%d,g=%d\n",b,c,d,e,f,g);

getch();
}

运行的时候时候打:程序名 和值>output.txt 再回车
这样就会在程序所在的文件夹里生成一个output.txt文件
程序名及和值视你的情况而定,假设文件名是hezhi.exe,要求的和值是120,就写:hezhi 120>output.txt
之后生成的output.txt文件里的内容就是你要的东西啦~

你有了麻烦通知我下。我也要

把它输出到文本,
这样跟你随便猜号码没什么两样,考虑更多因素,才有可能提高中奖机率,

我没玩过这个
如果各个红球的数值是不能重复的话,这个程序没问题啦,可以输出所有结果啊,完全达到你的要求的!
还是我理解错了?