c语言实现双色球和大乐透
头文件:
#include<stdio.h>
#include <stdlib.h>
#include<string.h>
#include <time.h>
函数原型:
void sortArray(int *a, int length); // 数组的排序 int randInMinAndMax( int range_min, int range_max );//产生一个0~max之间的某个数 void getRandArray(int *a, int length, int max); //产生某一长度的数组,它的每个元素都是随机生成的,且都在1~max之间、各不相同 void printResult(int *a, int length); //遍历数组 void getReult(char *arg, int *a1, int len1,int max1, int *a2, int len2, int max2);//产生双色球或者大乐透的结果 void hanldeArg(int argl, char *arg); //根据传入的参数判断是需要双色球还是大乐透,并跳转到相应的方法
实现方法:
void hanldeArg(int argl, char *arg){
int *a1 = NULL, *a2 = NULL;
if(strcmp(arg, "双色球") == ){
a1 = (int *)malloc(sizeof(int) * );
a2 = (int *)malloc(sizeof(int) * );
getReult(arg, a1, , , a2, , );
}else if(strcmp(arg, "大乐透") == ){
a1 = (int *)malloc(sizeof(int) * );
a2 = (int *)malloc(sizeof(int) * );
getReult(arg, a1, , , a2, , );
}else
printf("参数是 双色球 或者是 大乐透 \n");
if(a1 == NULL){
free(a1);
a1 = NULL;
}
if(a2 == NULL){
free(a2);
a2 = NULL;
}
}
void getReult(char *arg, int *a1, int len1,int max1, int *a2, int len2, int max2){
int i ;
srand((unsigned)time(NULL));
for(i = ; i < ; ++i){
getRandArray(a1, len1, max1);
getRandArray(a2, len2, max2);
}
printf("\n");
printf("%s 红球:", arg);
printResult(a1, len1);
printf("蓝球:");
printResult(a2, len2);
printf("\n");
}
int randInMinAndMax( int range_min, int range_max )
{
int i, u; for(i = ; i < ; ++i)
u = (double)rand() / RAND_MAX * (range_max - range_min) + range_min; return u;
}
void printResult(int *a, int length){
int i;
for(i = ; i < length; ++i){
printf(" %d ", a[i]);
}
}
void getRandArray(int *a, int length, int max){
int i, j, flag ;
int temp;
for(i =; i < length; ++i){
exist : {
//得到一个随机数
temp = randInMinAndMax(, max);
flag =; //设置数组中不存在这个数
//判段数组中是否存在
for(j = i; j >= ; --j){
if(temp == a[j]){
flag = ;
break;
}
}
};
if(flag){
goto exist;
}
a[i] = temp;
}
sortArray(a, length);
}
void sortArray(int *a, int length){
int i, j, temp;
for(i = ; i < length; ++i){
for(j = i + ; j < length; ++j){
if(a[j] < a[i]){
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
}
测试:
int main(int arcl, char *args[], char **env){
if(arcl < ){
printf("请输入参数 双色球 或者是 大乐透 \n");
return -;
}
hanldeArg(arcl, args[]);
system("pause");
return ;
}
运行及结果:

c语言实现双色球和大乐透的更多相关文章
- Python实现双色球和大乐透摇奖
实现代码: # code by kadycui # 模块引用 import random def select(): print('\n') print('请选择彩票种类') print('双色球输入 ...
- python模拟双色球大乐透生成算法
每天练习一段python代码,健康生活一辈子.晚上下班没事,打开电脑继续编写python代码!今天分享的一个是大家熟悉的双色球彩票的游戏,根据这个进行写的一个python算法,代码精简,肯定有bug, ...
- python—模拟生成双色球号和大乐透号
下边这个脚本,比较适合初级学习基本python语法用.但是,不精炼建议可参考https://www.cnblogs.com/Formulate0303/p/14031748.html的写法. 大乐透玩 ...
- Python生成随机验证码,大乐透号码
实例笔记之生成随机号码 扩展知识 - yield(生成器) 随机生成验证码 示例代码: import random # 导入标准模块中的random if __name__ == '__main__' ...
- 大乐透 Java随机码
package suijishu; import java.util.Random; // TODO Auto-generated method stub public class Xuanqi { ...
- python 获取大乐透中奖结果
实现思路: 1.通过urllib库爬取http://zx.500.com/dlt/页面,并过滤出信息 2.将自己的买的彩票的号与开奖号进行匹配,查询是否中奖 3.将中奖结果发生到自己邮箱 caipia ...
- 08 python学习笔记-随机生成大乐透号码(八)
1 #产生大乐透号码 2 #前区 1-32,5 后区 1-12,2 3 #1.前区从1-32中级取5个,后区再从1-12里面取2个 4 #01 02 03 04 5 def dlt(): #生成随机大 ...
- python 写一个生成大乐透号码的程序
""" 写一个生成大乐透号码的程序 生成随机号码:大乐透分前区号码和后区号码, 前区号码是从01-35中无重复地取5个号码, 后区号码是从01-12中无重复地取2个号码, ...
- python简易的大乐透数据获取及初步分析
该项目从网上爬取并分析彩票数据,为用户查看和初步分析往期数据提供一种简易的工具. https://github.com/unknowcry/Lottery # -*- coding: utf-8 -* ...
随机推荐
- 消息中间件-activemq实战之整合Spring(四)
前面的理论准备已经很充分,这一节我们来实战:将activemq整合到Spring框架才行中,因为Spring已经集成了JMS,这也为我们配置activermq带来了方便. 1. Spring对jms的 ...
- 转载 | textarea 在浏览器中固定大小和禁止拖动
HTML 标签 textarea 在大部分浏览器中只要指定行(rows)和列(cols)属性,就可以规定 textarea 的尺寸,大小就不会改变,不过更好的办法是使用 CSS 的 height 和 ...
- 防止sql注入:替换危险字符
在用户名或者密码框中输入“11‘ or ’1‘ = '1”时,生成的sql语句将为“selec * from userInfo where name = '11' or '1' = '1' and p ...
- java封装 redis 操作 对象,list集合 ,json串
/** * 功能说明: * 功能作者: * 创建日期: * 版权归属:每特教育|蚂蚁课堂所有 www.itmayiedu.com */package com.redis.service; import ...
- Spring 2017 Assignments1
一.作业要求 原版:http://cs231n.github.io/assignments2017/assignment1/ 翻译:http://www.mooc.ai/course/268/lear ...
- 纯前端下载pdf链接文件,而不是打开预览的解决方案
纯前端下载pdf链接文件,而不是打开预览的解决方案 一,介绍与需求 1.1,介绍 XMLHttpRequest 用于在后台与服务器交换数据.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行 ...
- 最短路径Dijkstra算法模板题---洛谷P3371 【模板】单源最短路径(弱化版)
题目背景 本题测试数据为随机数据,在考试中可能会出现构造数据让SPFA不通过,如有需要请移步 P4779. 题目描述 如题,给出一个有向图,请输出从某一点出发到所有点的最短路径长度. 输入格式 第一行 ...
- django前后端分离部署
部署静态文件: 静态文件有两种方式1:通过django路由访问2:通过nginx直接访问 方式1: 需要在根目录的URL文件中增加,作为入口 url(r'^$', TemplateView.as_vi ...
- CSS动效集锦,视觉魔法的碰撞与融合(一)
前言 在本文中我讲述了7种CSS的动效,它们也许看起来并不惊艳,但是我认为却足够传达本文的理念:编写一些特殊的CSS样式的时候需要不拘于常理,要用特殊的认识角度看待标签和样式属性,从而用「绕个弯」的方 ...
- 数据读写API——IO流
理清一些概念 1.Java 中的IO是干啥的? IO指的是Input和Output,主要目的是实现数据在存储介质之间的传输.[流:数据流,类比与水流的流动] 2.IO分类 按照操作单元来划分,可以分为 ...