首页 > 代码库 > C/C#双色球

C/C#双色球

6个红色球号码和1个蓝色球
红色球号码从1—33中选择
蓝色球号码从1—16中选择

C:(粗体:随机数,红色:库排序)

#include <stdio.h>#include <stdlib.h>#include <time.h>int blue[6];void printArr(int arr[],int len );bool checkNum(int arr[],int len, int now);int compare(const void *value1, const void *value2);main() {    srand(time(0));    for(int i = 0; i< 6; i++) {        int n = rand()%33+1;        if (!checkNum(blue, 6, n)) {            i--;            continue;        }        blue[i] = n;    }    printf("取到的蓝球:");    printArr(blue, 6);    printf("排序后蓝球:");    // 函数库自带的快速排序函数    // 对于有多个重复值的数组来说,效率较低不稳定    qsort(blue, 6, sizeof(int), compare);    printArr(blue, 6);    printf("红球:%d", rand()%16+1);}// qsort 要结合  compare使用int compare(const void *value1, const void *value2) {    // 升序    return *(int*)value1 - *(int*)value2;}void printArr(int arr[],int len ) {    for(int i = 0 ; i<len; i++) {        printf("%d ", arr[i]);    }    printf("\n");}bool checkNum(int arr[],int len, int now) {    for(int i = 0 ; i<len; i++) {        if (arr[i] == now) {            return false;        }    }    return true;}

 

技术分享

C#

using System;namespace ConsoleApplication2{    class Program    {        static int[] 蓝球 = new int[6];        static void Main(string[] args)        {            Random r = new Random();            for (int i = 0; i < 6; i++)            {                int n = r.Next(33) + 1;                if (重复Check(n))                {                    i--;                    continue;                }                蓝球[i] = n;            }            Array.Sort(蓝球);            foreach (int n in 蓝球)            {                Console.WriteLine(n);            }            Console.WriteLine("  " + (r.Next(16) + 1));            Console.ReadKey();        }        static bool 重复Check(int now)        {            foreach (int n in 蓝球)            {                if (now == n)                {                    return true;                }            }            return false;        }    }}

技术分享

 

C/C#双色球