• 欢迎访问C语言网www.dotcpp.com 比赛栏每月有奖月赛!举办比赛联系QQ:2045302297
  • 问题反馈、粉丝交流 QQ群327452739 蓝桥杯训练群:113766799 申请群时请备注排名里的昵称
  • C语言研究中心 为您提供有图、有料、解渴的C语言专题! 欢迎讨论!

C语言模拟彩票系统(VC6环境)

项目源码 CTO 25799次浏览 5个评论

各位,今天继续给大家放C语言的源码,这次是用C语言实现的模拟彩票系统,很好玩哦~看图:

C语言模拟彩票系统(VC6环境)

继续看,这是功能选择页面:

C语言模拟彩票系统(VC6环境)

用户可以选择机选还是自选,完成选号,然后可以兑奖~ 快试试吧!

 

源代码如下(PS:对于学习的同学可不要直接复制交差哦!):

 

  1. /*********************************说明***********************************/
  2. // 模拟系统有自选机选两种模式,自选核心代码采用剩余接收函数(syjs())完成相应要求
  3. // 机选用随机函数生成. 程序中采用了了一些DOS口令,如Sleep,color,pause,title,time,date等函数
  4. // 程序基本完成模拟彩票系统的功能。
  5. // 登陆用户名为clang密码为任意六个字符
  6. /*****************************************************************************/
  7. // 程序:彩票35选7系统
  8. // 作者:c语言网(www.dotcpp.com)
  9. // 最后修改时间:2011.8.3
  10. // 版本:V2.0
  11. /*****************************************************************************/
  12. #include<stdio.h>
  13. #include<conio.h>
  14. #include<stdlib.h>
  15. #include<time.h>
  16. #include<string.h>
  17. #include<windows.h>
  18. #define sr srand((unsigned)time(0))
  19. void qbjx(); //全部机选
  20. void zixuan(); // 自选函数
  21. void jixuan(); // 机选函数
  22. void dh(); //登陆函数
  23. void by(); //备用函数
  24. void djsc(int n); //兑奖输出函数
  25. void syjs(int a[],int n); //剩余接收函数
  26. void px(int a[],int n); //排序函数
  27. int dj(int a[],int n); //兑奖函数
  28. int jsgq(); //自选接收关卡
  29. int dj(int a[],int n) /*兑奖函数*/
  30. {
  31. int o[7]={1,7,14,17,21,28,35};
  32. int x=0,i,j,k;
  33. for(i=0;i<7;i++)
  34. for(j=0;j<n;j++)
  35. if(o[i]==a[j] || o[i]==a[j]-48)
  36. x++;
  37. printf("本期的中奖号码为: ");
  38. for(k=0;k<7;k++)
  39. {
  40. Sleep(200);
  41. printf("%d ",o[k]);
  42. }
  43. printf("\n\n");
  44. return x;
  45. }
  46. void px(int a[],int n) /*排序函数*/
  47. {
  48. int i,j,temp;
  49. for(i=0;i<n-1;i++)
  50. for(j=0;j<n-i-1;j++)
  51. if(a[j]>a[j+1])
  52. {
  53. temp=a[j];
  54. a[j]=a[j+1];
  55. a[j+1]=temp;
  56. }
  57. }
  58. void syjs(int a[],int n) /*剩余接收函数-递归被调函数*/
  59. {
  60. int h,i;
  61. for(h=n;h<7;h++) /*范围判断*/
  62. {
  63. printf("请输入第%d个号码:",h+1);
  64. a[h]=jsgq();
  65. if(a[h]<36 && a[h]>0)
  66. {
  67. for(i=0;i<h;i++) /*重复判断*/
  68. {
  69. if(a[h]==a[h-i-1])
  70. {
  71. printf("您输入的号码已经存在!\n");
  72. syjs(a,h);break;
  73. }
  74. }
  75. }
  76. else
  77. {
  78. printf("您输入的范围有误!\n");
  79. syjs(a,h);break;
  80. }
  81. if(a[6]!=0) /* 根据第七个数是否被接收判断,下同*/
  82. break;
  83. else
  84. continue;
  85. }
  86. }
  87. int jsgq() //自选接收关卡
  88. {
  89. int x;
  90. char b[10]={'\0'}; //接收关卡
  91. scanf("%s",b);
  92. if(b[1]=='\0')
  93. x=(b[0]-48);
  94. else
  95. x=(b[0]-48)*10+b[1]-48;
  96. if(b[2]!='\0')
  97. x=100;
  98. return x;
  99. }
  100. void zixuan1()
  101. {
  102. int a[7]={0}; /* 数组a初始化*/
  103. int x,y,i,h; //其中X为正式存放临时变量
  104. printf("请输入第1个号码:");
  105. x=jsgq();
  106. printf("\b");
  107. if(0<x && x<36)
  108. {
  109. a[0]=x;
  110. for(h=1;h<7;h++) /*范围判断*/
  111. {
  112. printf("请输入第%d个号码:",h+1);
  113. a[h]=jsgq();
  114. if(a[h]>35 || a[h]<1)
  115. {
  116. printf("您输入的范围有误!\n");
  117. syjs(a,h);break;
  118. }
  119. for(i=0;i<h;i++) /*重复判断*/
  120. {
  121. if(a[h]==a[h-i-1])
  122. {
  123. printf("输入的已经存在!\n");
  124. syjs(a,h);break;
  125. }
  126. }
  127. if(a[6]!=0)
  128. break;
  129. else
  130. continue;
  131. }
  132. }
  133. else /*若第一个数接收失败,重新开始*/
  134. {
  135. printf("输入的范围有误!\n");
  136. system("pause");
  137. zixuan1();
  138. }
  139. printf("\n开始兑奖!\n");
  140. system("pause");
  141. printf("\n\n");
  142. px(a,7);
  143. printf("\n\n ");
  144. printf("您的自选号码为: ");
  145. for(i=0;i<7;i++)
  146. {
  147. Sleep(200);
  148. printf("%d ",a[i]);
  149. }
  150. printf("\n\n ");
  151. y=dj(a,7);
  152. djsc(y);
  153. }
  154.  
  155. void zixuan() /*自选函数*/
  156. {
  157. system("color 8c");
  158. system("title 自选模式 --c语言(www.dotcpp.com)研究中心");
  159. printf("您已进入自选模式\n");
  160. printf("请输入七个自选号码:\n");
  161. zixuan1();
  162. }
  163. void jixuan() /*机选函数*/
  164. {
  165. char x;
  166. system("color 2f");
  167. system("title 机选模式 --c语言(www.dotcpp.com)研究中心");
  168. system("cls");
  169. printf("\n\n\n\n");
  170. printf(" ***************************************************\n");
  171. printf(" * *\n");
  172. printf(" * 选择机选模式: *\n");
  173. printf(" * 全部机选--请键入1 *\n");
  174. printf(" * *\n");
  175. printf(" * *\n");
  176. printf(" * 退出--请键入2 *\n");
  177. printf(" ***************************************************\n\n");
  178. for(;;)
  179. {
  180. x=getch();
  181. if(x=='1') {qbjx();break;}
  182. else if(x=='2'){by();break;}
  183. }
  184. system("pause");
  185. by();
  186. }
  187. void qbjx()
  188. {
  189. int j,k;
  190. char i;
  191. int y,m;
  192. char x;
  193. int a[9][7];
  194. printf("请输入要打印的组数(1-9):\n");
  195. printf("\n");
  196. for(;;)
  197. {
  198. i=getch();
  199. if(i>'0' && i<='9')
  200. {
  201. for(k=0;k<i-48;k++)
  202. {
  203. printf("<%3d >",k+1);
  204. for(j=0;j<7;j++)
  205. {
  206. a[k][j]=rand()%35+1;
  207. for(m=1;m<j+1;m++)
  208. {
  209. if(a[k][j]==a[k][j-m])
  210. {j--;break;}
  211. }
  212. }
  213. px(a[k],7); /*调用排序函数*/
  214. for(j=0;j<7;j++)
  215. printf(" %2d ",a[k][j]);
  216. printf("\n\n");
  217. }
  218. printf("您想要第几组号码兑奖?");
  219. printf("\n");
  220. for(;;)
  221. {
  222. x=getch();
  223. if(x>'0' && x<=i)
  224. {
  225. printf("\n\n ");
  226. Sleep(50);
  227. printf("您选择了第%d组号码:",x-48);
  228. for(j=0;j<7;j++)
  229. {
  230. Sleep(200);
  231. printf("%d ",a[x-48-1][j]);
  232. }
  233. printf("\n\n ");
  234. y=dj(a[x-48-1],7);
  235. djsc(y);break;
  236. }
  237. }break;
  238. } // if的
  239. } // for的
  240. }
  241. void dl() /*登陆界面*/
  242. {
  243. int i,j,m;
  244. char a[100],mm[7];
  245. printf("\n\n\n\n");
  246. printf(" ************************************************************************\n");
  247. printf(" * *\n");
  248. printf(" * 欢迎使用本系统,本系统分自选和机选两种选号方式供彩民使用,登陆后可选 *\n");
  249. printf(" * *\n");
  250. printf(" ************************************************************************\n");
  251. printf("\n\n");
  252. printf(" 请输入帐号: ");
  253. scanf("%s",a);
  254. printf(" 请输入六位密码:");
  255. for(j=0;j<6;j++)
  256. {
  257. mm[j]=getch();
  258. printf("*");
  259. }
  260. printf("\n");
  261. printf("正在验证,请稍候...\n");
  262. printf(">>>>>>>>");
  263. for(i=0;i<70;i++) /* 控制打印<*/
  264. {
  265. Sleep(50);
  266. printf(">");
  267. }
  268. printf("\n");
  269. if(strcmp(a,"clang")==0)
  270. {
  271. printf("---------------------------------登陆成功!----------------------------------\n");
  272. system("pause");
  273. system("cls");
  274. }
  275. else
  276. {
  277. for(m=3;m>0;m--)
  278. {
  279. system("cls");
  280. printf("\n\n\n\n");
  281. printf(" ************************************************************************\n");
  282. printf(" * *\n");
  283. printf(" * 欢迎使用本系统,本系统分自选和机选两种选号方式供彩民使用,登陆后可选 *\n");
  284. printf(" * *\n");
  285. printf(" ************************************************************************\n");
  286. printf("\n\n");
  287. printf("帐号或密码错误,%d秒后重新输入!",m);
  288. Sleep(1000);
  289. }
  290. system("cls");
  291. dl();
  292. }
  293. }
  294. void hy() /*欢迎界面函数*/
  295. {
  296. printf("\n\n\n\n\n\n\n");
  297. printf(" ============================================\n");
  298. printf(" ============================================\n");
  299. printf(" \n");
  300. printf(" *******欢迎使用本系统,请按任意键继续*******\n");
  301. printf(" \n");
  302. printf(" ============================================\n");
  303. printf(" ============================================\n");
  304. getch();
  305. system("cls");
  306. }
  307. void dh() /*导航界面*/
  308. {
  309. char x[10];
  310. system("color 5f");
  311. system("title 选择方式 --c语言(www.dotcpp.com)研究中心");
  312. printf("\n\n\n\n\n\n");
  313. printf("\n");;
  314. printf(" ============================================\n");
  315. printf(" 请选择选号方式: \n");
  316. printf(" \n");
  317. printf(" 自选----------请输入1 \n");
  318. printf(" 机选----------请输入2 \n");
  319. printf(" 退出----------请输入3 \n");
  320. printf(" ============================================\n\n");
  321. printf("请选择要进行的操作(1或2或3),然后回车:");
  322. scanf("%s",x);
  323. if(x[0]=='1') zixuan();
  324. else if(x[0]=='2')
  325. {
  326. printf("您已进入机选模式\n");
  327. jixuan();
  328. }
  329. else if(x[0]=='3') exit(0);
  330. else
  331. {
  332. system("cls");
  333. dh();
  334. }
  335. }
  336. void djsc(int n)
  337. {
  338. switch(n)
  339. {
  340. case 0: printf(" 很遗憾!您没能中奖!再接再厉! \n");break;
  341. case 1: printf(" 恭喜!有一个号码正确!\n");break;
  342. case 2: printf(" 恭喜!有两个号码正确!\n");break;
  343. case 3: printf(" 恭喜!您中了三个号码!\n");break;
  344. case 4: printf(" 恭喜恭喜!您中了四个号!\n");break;
  345. case 5: printf(" 恭喜恭喜!三等奖!\n");break;
  346. case 6: printf(" 恭喜恭喜! 二等奖!\n");break;
  347. default: printf(" 恭喜!恭喜!\n您的运气太好了! 恭喜您中大奖!\n");break;
  348. }
  349. printf("\n");
  350. printf("当前时间:");
  351. system("time /t"); system("date /t");
  352. }
  353. void by() /*备用函数*/
  354. {
  355. char x;
  356. printf("\n\n\n");
  357. printf(" ------------------------------------------- \n");
  358. printf(" | 您希望? | \n");
  359. printf(" | | \n");
  360. printf(" | 返回--------->请输入 q | \n");
  361. printf(" | | \n");
  362. printf(" | 退出--------->请按其他键 | \n");
  363. printf(" ------------------------------------------- \n");
  364. x=getch();
  365. if(x=='q')
  366. {
  367. system("cls");
  368. dh();
  369. }
  370. else exit(0);
  371. }
  372. int main() /*主函数*/
  373. {
  374. sr;
  375. system("title 彩票35选7系统 --c语言(www.dotcpp.com)研究中心");
  376. system("color 1f");
  377. hy();
  378. dl();
  379. dh();
  380. printf("\n\n\n");
  381. system("pause");
  382. by();
  383. return 0;
  384. }
  385. /////////////////////// c语言(www.dotcpp.com)研究中心 //////////////////////////

C语言研究中心(www.dotcpp.com)

C语言网提供「C语言、C++、算法竞赛」在线课程,全部由资深研发工程师或ACM金牌大佬亲授课,更科学、全面的课程体系,以在线视频+在线评测的学习模式学习,学练同步,拒绝理论派,真正学会编程!还有奖学金等增值福利等你!

C语言网, 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明C语言模拟彩票系统(VC6环境)
喜欢 (31)
[jinyangH@aliyun.com]
分享 (0)
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
(5)个小伙伴在吐槽
  1. 预处理无头文件
    vagrant2016-09-28 20:02 回复
    • 已经改好啦
      CTO2016-10-07 17:04 回复
      • 您好,我有问题想问您
        狂野男孩2017-06-08 17:07 回复
  2. 到底要怎样登陆啊!
    神人2017-07-14 00:55 回复
  3. 这玩意还要账号密码登录
    牛牛2023-05-07 10:26 回复