‘壹’ c语言彩票兑奖程序
#include<stdio.h>
voidmain()
{
inta[]={1,2,3,4,5,6,7};
intb[7],i,j,count=0,max=0,maxflag;
for(i=0;i<7;i++)
scanf("%d",&b[i]);
i=0;
while(i<7)
{
j=0;
count=0;
if(b[i]==a[j])
while(i<7&&j<7&&b[i]==a[j])i++,j++,count++;
else
i++;
if(max<count){max=count;maxflag=i;}
}
count=max;
if(count==7)printf("特等奖 ");
elseif(count==6)
{
if(maxflag==7)
printf("二等奖 ");
else
printf("一等奖 ");
}
elseif(count==5)
{
if(maxflag==7)
printf("三等奖 ");
else
printf("二等奖 ");
}
elseif(count==4)
{
if(maxflag==7)
printf("四等奖 ");
else
printf("三等奖 ");
}
elseif(count==3)
{
if(maxflag==7)
printf("五等奖 ");
else
printf("四等奖 ");
}
elseif(count==2&&maxflag!=7)
printf("五等奖 ");
else
printf("没中奖 ");
}
‘贰’ 彩票生成系统用C语言
你要做编程吗?会写程序 不
‘叁’ C语言 实现模拟彩票的程序设计:随机产生7个数字(用C语言随机函数产生,[1,33]区间,七个数互
使用结构体链表模拟彩票的摇奖机,来保证每次随机都是不同的数字。
数组也可以模拟,但是删除元素比较麻烦,用链表更快捷。
定义数组指针,动态分配内存。
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
typedefstructList{
intnumber;
structList*next;
}ArrayList;
ArrayList*createList(int);//创建链表,参数是链表的节点数
voidfreeList(ArrayList*);//循环释放所有节点的内存
intdeleteNode(ArrayList*,int);//删除节点,返回节点的数据
main(){
//动态创建内存
int*numbers=(int*)calloc(7,sizeof(int));
int*inNumbers=(int*)calloc(7,sizeof(int));
//动态创建数组链表存放1-33个编号
ArrayList*balls=createList(33);
inti;
srand((unsigned)time(NULL));
printf("请输入7个不同的数字(1-33): ");
for(i=0;i<7;i++){
*(numbers+i)=deleteNode(balls,rand()%(33-i));
scanf("%d",inNumbers+i);
}
printf("随机产生的7个数字是: ");
for(i=0;i<7;i++){
printf("%d",*(numbers+i));
}
printf(" 相同的数字: ");
//查找
intj;
for(i=0;i<7;i++){
for(j=0;j<7;j++){
if(*(numbers+i)==*(inNumbers+j)){
printf("%d",*(numbers+i));
break;
}
}
}
//释放内存
free(numbers);
free(inNumbers);
freeList(balls);
}
ArrayList*createList(intn){
ArrayList*head=NULL,*end=NULL,*node=NULL;
end=head=(ArrayList*)malloc(sizeof(ArrayList));//head在删除和插入节点时有用。不能删除head,也不能插入到head前面
inti;
for(i=1;i<=n;i++){
node=(ArrayList*)malloc(sizeof(ArrayList));
node->number=i;
end->next=node;
end=node;
}
end->next=NULL;
returnhead;
}
voidfreeList(ArrayList*head){
ArrayList*node=head;
while(head!=NULL){
head=head->next;
free(node);
node=head;
}
}
intdeleteNode(ArrayList*head,intindex){//index节点索引(0-32),返回被删除的球的编号
ArrayList*node=head->next,*temp=head;
inti=0,number;
while(i<index&&node!=NULL){
temp=node;
node=node->next;
i++;
}
if(node!=NULL){
number=node->number;
temp->next=node->next;
free(node);
}
returnnumber;
}
运行结果
‘肆’ 如何用C语言编一个彩票15选5并显示所有排列组合的程序。
已调试完毕,共3003条!!!每输出40条按任一键继续...,保证结果万无一失,你可以查看下,源程序如下:
#include "stdio.h"
main()
{int i,j,k,m,n;
long int count=0;
for(i=1;i<=15;i++)
for(j=i+1;j<=15;j++)
for(k=j+1;k<=15;k++)
for(m=k+1;m<=15;m++)
for(n=m+1;n<=15;n++)
{if(iden(i,j,k,m,n))
printf("No %ld : %5d%5d%5d%5d%5d\n",++count,i,j,k,m,n);
if(count%45==0) getchar();
}
}
iden(int i,int j,int k,int m,int n)
{if(i==j||i==k||i==m||i==n||j==k||j==m||j==n||k==m||k==n||m==n)
return 0;
else
return 1;
}
再增加两个变量,修改下程序可以35选5,我机子是P4 cpu1.8G 内存是512M,跑了好久,估计要两个小时左右!!!没耐心等下去,有朋友想试下的我把程序弄下面来了!!
#include "stdio.h"
main()
{int i,j,k,m,n,q,w;
long int count=0;
for(i=1;i<=35;i++)
for(j=i+1;j<=35;j++)
for(k=j+1;k<=35;k++)
for(m=k+1;m<=35;m++)
for(n=m+1;n<=35;n++)
for(q=n+1;q<=35;q++)
for(w=q+1;w<=35;w++)
{if(iden(i,j,k,m,n,q,w))
printf("No %ld : %5d%5d%5d%5d%5d%5d%5d\n",++count,i,j,k,m,n,q,w);
if(count%45==0) getchar();
}
}
iden(int i,int j,int k,int m,int n,int q,int w)
{if(i==j||i==k||i==m||i==n||i==q||i==w||j==k||j==m||j==n||j==q||j==w||k==m||k==n||k==q||k==w||m==n||m==q||m==w||n==q||n==w||q==w)
return 0;
else
return 1;
}
‘伍’ 求用C语言编写彩票6+1程序
#include <stdio.h>
main()
{
int p[7],q[7],n,i; /****p:投注号码,q:开奖号码****/
char c='0';
st(p,q); /****初始化****/
n=pd(p,q);
switch (n)
{
case 6:
{
if(p[6]==q[6]) c='!';
else c='1';
} break;
case 5:
{
if(p[1]!=q[1]||p[4]!=q[4]) c='3';
if(p[2]!=q[2]||p[3]!=q[3]) c='0';
else c='2';
} break;
case 4:
{
if((p[0]!=q[0]&&p[1]!=q[1])||(p[0]!=q[0]&&p[5]!=q[5])||(p[4]!=q[4]&&p[5]!=q[5]))
c='3';
else c='0';
}
}
switch (c )
{
case '!': printf("\nni zhong le te deng jiang!");break;
case '1': printf("\nni zhong le 1 deng jiang!"); break;
case '2': printf("\nni zhong le 2 deng jiang!"); break;
case '3': printf("\nni zhong le 3 deng jiang!"); break;
case '0': printf("\nni mei you zhong jiang!"); break;
}
getch();
}
st(int p[],int q[])
{
int i;
printf("\nXuan zhe tou zhu hao ma: ");
for(i=0;i<7;i++)
scanf("%d",&p[i]);
printf("\nKai jiang hao ma shi: ");
for(i=0;i<7;i++)
scanf("%d",&q[i]);
}
pd(int p[],int q[])
{
int i,n=0;
for(i=0;i<6;i++)
if(p[i]==q[i])
n++;
return(n);
}
‘陆’ c语言程序设计——彩票问题
以下的 C 小程序将输出所有 28 个和值的出现的概率(输出贴在程序下面)。
可见概率最高 0.075,最低 0.001,所以已开出的 1000 期彩票中出现频率最高的和值是 13 和 14,
连续未出现期数最长的和值则是 0 和 27 (假设实际概率和理论概率吻合)。
#include<stdio.h>
/* 返回 number 中所有数字的和 */
unsigned sumOfAllDigits( unsigned number );
void main( ) {
/* 最低和值是 0,最高和值是 27,所以共有 28 个和值。*/
#define NUMBER_OF_SUM 28
unsigned chance[ NUMBER_OF_SUM ] = { 0 },
i;
for ( i = 0; i <= 999; i++ )
++chance[ sumOfAllDigits( i ) ];
puts( "和值\t出现的概率" );
puts( "一一\t一一一一一" );
for ( i = 0; i < NUMBER_OF_SUM; i++ )
printf( "%2u\t%.3f\n", i, chance[ i ] / 1000. );
}
unsigned sumOfAllDigits( unsigned number ) {
unsigned sum = 0;
for ( ; number; number /= 10 )
sum += number % 10;
return sum;
}
一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一
输出:
和值出现的概率
一一一一一一一
00.001
10.003
20.006
30.010
40.015
50.021
60.028
70.036
80.045
90.055
100.063
110.069
120.073
130.075
140.075
150.073
160.069
170.063
180.055
190.045
200.036
210.028
220.021
230.015
240.010
250.006
260.003
270.001
‘柒’ C语言 彩票系统
哈哈,
使用rand()和srand()函数生成随机的号码,
很简单的吧。。。
在学校里都是不读书的。想读书的都是没有机会上学的。
‘捌’ 彩票系统c语言
c语言彩票系统帮实现
‘玖’ 彩票兑奖程序 C语言
这是我写的程序 如有问题请发消息给我
#include<stdio.h>
int fun(int *a,int *b)
{ int i,j=0;
for(i=0;i<6;i++)
{if(a[i]==b[i]&&a[i+1]==b[i+1])
j++ ;
else
j=0;
}
return j;
}
void main()
{int i,k;
int b[7],a[7]={0,1,2,3,4,5,6};
for(i=0;i<7;i++)
scanf("%d",&b[i]);
k=fun(a,b);
if(a[6]==b[6]&&k==6)
printf("特等奖");
else
switch(k)
{ case 0:printf("谢谢");break;
case 4:printf("三等奖");break;
case 5:printf("二等奖");break;
case 6:printf("一等奖");break;
}
}
‘拾’ c语言怎么实现一个数,每天刷新一次,我做简单的彩票系统,用了随机数开奖。双色球,怎么让他每天开奖(
如果只是简单的产生随机数很简单,但是如果你要求随机数每天都在刷新的话,那么这个程序需要运行在一个平台上面,并且这个平台可以提供时间,方便的话可以把要求说的再详细一些.