【房产网站源码 php】【超市管理系统源码下载】【游戏发布网站免费源码】c 抽奖源码_抽奖源码下载

时间:2024-12-26 02:11:42 编辑:源码泄露脚本 来源:.strcpy源码

1.B站动态转发抽奖脚本+教程
2.请教vb源代码,奖源奖源抽奖程序,码抽码下从100个人中抽取三等奖3个,奖源奖源二等奖2个,码抽码下一等奖1个,奖源奖源每次抽奖不重复。码抽码下房产网站源码 php
3.为什么我抽奖老是奖源奖源抽不到呢?
4.用swing编写一个java抽奖的程序,至少有5个按钮,码抽码下显得高大上一点。奖源奖源
5.求VB写的码抽码下循环人名抽奖程序源代码
6.急寻VB抽奖程序代码

c  抽奖源码_抽奖源码下载

B站动态转发抽奖脚本+教程

       在B站世界中,动态分享抽奖已经成为粉丝互动的奖源奖源热门活动。本文将带你深入了解如何使用Python脚本来自动化这个过程,码抽码下包括转发计数和幸运用户私信的奖源奖源超市管理系统源码下载发送。请注意,码抽码下B站API并不提供所有用户数据,奖源奖源因此在大量用户参与时可能无法适用。

       首先,让我们掌握基本的步骤。为了运行脚本,你需要具备Python 2的环境,因为脚本是针对Python 2编写的。从官网下载并配置好环境变量至关重要。以下是操作指南:

       1. **下载Python 2**:访问Python官网下载并安装最新版本,确保环境变量已配置。

       2. **配置环境变量**:在命令提示符中,游戏发布网站免费源码输入`chcp `设置编码,然后`set PYTHONIOENCODING=utf-8`以处理中文字符。

       3. **创建脚本**:在桌面上创建一个名为"抽奖.py"的文本文件,确保扩展名可见。你可以参考Hack Inn大佬的脚本,链接已删除,但可以搜索相关教程。

       4. **修改脚本**:将脚本中的关键代码片段粘贴到文档中,如获取动态详情的函数,数据库查询和随机抽取用户ID的部分。

       以下是一段简化后的核心代码:

       ```html

       源码核心部分:

       ```python

       def get_info_and_send_msg(Dynamic_id):

        BiliJson = ... # 从API获取动态详情,获取转发数和UP主UID

        Total_count = BiliJson['data']['card']['desc']['repost']

        UP_UID = BiliJson['data']['card']['desc']['user_profile']['info']['uid']

        Bilibili_Doge = random.randint(0,2017年秒赞源码 Bilibili_Key)

        if check_user(Bilibili_Doge):

        user_info = ... # 从数据库查询用户信息

        send_private_msg(user_info)

       def check_user(Doge_ID):

        res = ... # 检查ID是否存在数据库

        return len(res) > 0

       def send_private_msg(user_info):

        user_id, uname, comment = user_info

        print(f"用户ID: { user_id}, 用户名: { uname}, 转发详情: { comment}")

        send_link = input(TellTime() + "是否发送私信? (Y/N): ")

        if send_link.lower() in ['y', 'yes', '是']:

        webbrowser.open(f"/#/whisper/mid{ user_id}")

       # 调用函数

       GetTotalRepost() # 获取总转发数

       GetLuckyDog() # 抽取幸运用户

       ```

       在实际操作中,将动态链接粘贴到命令行中,运行`python 抽奖.py`。执行后,脚本会统计转发次数,找到中奖用户,询问是否发送私信。如果你想查看数据库中的用户信息,可以使用SQLiteSpy等工具打开Bilibili_TMP.db文件。

       为了更顺利地参与抽奖,确保你理解了脚本的工作原理,并根据需求进行相应的调整。同时,java 界面开发源码遇到编码问题时,可以查阅相关文档或咨询作者Love丶伊卡洛斯,Q群。

       抽奖抽奖,乐趣无穷,现在就来体验一下吧!

请教vb源代码,抽奖程序,从个人中抽取三等奖3个,二等奖2个,一等奖1个,每次抽奖不重复。

       Public Sub Main()

        Dim allLeft As New List(Of Integer)()

        For i As Integer = 0 To

        allLeft.Add(i + 1)

        Next

        Dim r As New Random()

        Dim [next] As Integer

        Dim level As String

        For i As Integer = 0 To 5

        [next] = r.[Next]() Mod allLeft.Count

        If i < 3 Then

        level = "Third"

        ElseIf i < 5 Then

        level = "Second"

        Else

        level = "First"

        End If

        Console.WriteLine(level & " level prize is: " & allLeft([next]).ToString())

        allLeft.RemoveAt([next])

        Next

       End Sub

为什么我抽奖老是抽不到呢?

       今天我们一起来看看抽奖黑幕,这才是你真正抽不中的原因

       上面这张图是某抽奖平台的后台,点击指定就可以内定中奖人,这下知道你为啥不能中奖了吗?

       接下来我们一起来看看更多黑幕操作

       一、可以在后台添加参与人数、推荐至首页等操作

       二、可以给用户增加抽奖次数,或者删除用户

       三、很多平台块钱就可以内定抽奖拿到源代码

       如何判断是不是假抽奖

       判断一:进入活动推荐页看推荐活动数量与参与人数,如果推荐活动过少,参与人数太少,必定是假抽奖

       当做

       做个没黑幕的抽奖

       送张**票,每个月1张,这样是不是你一年的**我都包了狗头保命,这活动包真

用swing编写一个java抽奖的程序,至少有5个按钮,显得高大上一点。

       &#;

import java.awt.Color;//界面不是很高大上档次,但是能满足你的基本需求,希望对你有用

       import java.awt.Font;

       import java.awt.GridLayout;

       import java.awt.event.ActionEvent;

       import java.awt.event.ActionListener;

       import javax.swing.JButton;

       import javax.swing.JFrame;

       import javax.swing.JOptionPane;

       import javax.swing.border.Border;

       import javax.swing.border.LineBorder;

       public class 抽奖游戏 extends JFrame {

        static 抽奖游戏 frame;

        public 抽奖游戏() {

         setLayout(new GridLayout(3, 3, 3, 3));

         Border border = new LineBorder(Color.BLUE, 4);

         JButton l1 = new JButton();

         JButton l2 = new JButton();

         JButton l3 = new JButton();

         JButton l4 = new JButton();

         JButton l5 = new JButton();

         JButton l6 = new JButton();

         JButton l7 = new JButton("祝你好运");

         JButton l8 = new JButton("中奖规则");

         JButton l9 = new JButton("再次抽奖");

         l1.setBorder(border);

         l2.setBorder(border);

         l3.setBorder(border);

         l4.setBorder(border);

         l5.setBorder(border);

         l6.setBorder(border);

         l7.setBorder(border);

         l8.setBorder(border);

         l9.setBorder(border);

         String[] num2 = {  "1", "2", "3", "4", "5", "6" };

         l8.addActionListener(new ActionListener() {

          public void actionPerformed(ActionEvent arg0) {

           // TODO Auto-generated method stub

           JOptionPane.showMessageDialog(null, "游戏规则:\n" + "特等奖:\n"

             + "第一行或者第二行出现的数字全部相同\n"

             + "第一第二行出现升序的1,2,3,4,5,6或者降序的6,5,4,3,2,1\n" + "一等奖\n"

             + "1:第一行或第二行的数字降序排列或者升序排列\n"

             + "2:第一行或者第二行相邻的按钮出现一样的数字\n");

          }

         });

         l9.addActionListener(new ActionListener() {

          @Override

          public void actionPerformed(ActionEvent e) {

           // TODO Auto-generated method stub

           l1.setText("*");

           l2.setText("*");

           l3.setText("*");

           l4.setText("*");

           l5.setText("*");

           l6.setText("*");

           l7.setBackground(Color.lightGray);

           l7.setText("离中奖不远了!");

          }

         });

         l6.addActionListener(new ActionListener() {

          public void actionPerformed(ActionEvent arg0) {

           // TODO Auto-generated method stub

           int j1 = (int) (Math.random() * ) % 6;

           l1.setText(num2[j1]);

           int j2 = (int) (Math.random() * ) % 6;

           l2.setText(num2[j2]);

           int j3 = (int) (Math.random() * ) % 6;

           l3.setText(num2[j3]);

           int j4 = (int) (Math.random() * ) % 6;

           l4.setText(num2[j4]);

           int j5 = (int) (Math.random() * ) % 6;

           l5.setText(num2[j5]);

           int j6 = (int) (Math.random() * ) % 6;

           l6.setText(num2[j6]);

           if (j1 == j2 && j2 == j3 || j4 == j5 && j5 == j6 || j1 == 1

             && j2 == 2 && j3 == 3 && j4 == 4 && j5 == 5 && j6 == 6

             || j1 == 6 && j2 == 5 && j3 == 4 && j4 == 3 && j5 == 2

             && j6 == 1) {

            l7.setBackground(Color.red);

            l7.setText("特等奖");

           } else if (j1 > j2 && j2 > j3 || j3 > j2 && j2 > j1 || j4 > j5

             && j5 > j6 || j6 > j5 && j5 > j4 || j1 == j2

             && j5 == j4 || j1 == j2 && j5 == j6 || j3 == j2

             && j4 == j5 || j5 == j6 && j2 == j3) {

            l7.setBackground(Color.YELLOW);

            l7.setText("一等奖");

           } else {

            l7.setBackground(Color.lightGray);

            l7.setText("未中奖,加油!");

           }

          }

         });

         l5.addActionListener(new ActionListener() {

          public void actionPerformed(ActionEvent arg0) {

           // TODO Auto-generated method stub

           int j1 = (int) (Math.random() * ) % 6;

           l1.setText(num2[j1]);

           int j2 = (int) (Math.random() * ) % 6;

           l2.setText(num2[j2]);

           int j3 = (int) (Math.random() * ) % 6;

           l3.setText(num2[j3]);

           int j4 = (int) (Math.random() * ) % 6;

           l4.setText(num2[j4]);

           int j5 = (int) (Math.random() * ) % 6;

           l5.setText(num2[j5]);

           int j6 = (int) (Math.random() * ) % 6;

           l6.setText(num2[j6]);

           if (j1 == j2 && j2 == j3 || j4 == j5 && j5 == j6 || j1 == 1

             && j2 == 2 && j3 == 3 && j4 == 4 && j5 == 5 && j6 == 6

             || j1 == 6 && j2 == 5 && j3 == 4 && j4 == 3 && j5 == 2

             && j6 == 1) {

            l7.setBackground(Color.red);

            l7.setText("特等奖");

           } else if (j1 > j2 && j2 > j3 || j3 > j2 && j2 > j1 || j4 > j5

             && j5 > j6 || j6 > j5 && j5 > j4 || j1 == j2

             && j5 == j4 || j1 == j2 && j5 == j6 || j3 == j2

             && j4 == j5 || j5 == j6 && j2 == j3) {

            l7.setBackground(Color.YELLOW);

            l7.setText("一等奖");

           } else {

            l7.setBackground(Color.lightGray);

            l7.setText("未中奖,加油!");

           }

          }

         });

         l4.addActionListener(new ActionListener() {

          public void actionPerformed(ActionEvent arg0) {

           // TODO Auto-generated method stub

           int j1 = (int) (Math.random() * ) % 6;

           l1.setText(num2[j1]);

           int j2 = (int) (Math.random() * ) % 6;

           l2.setText(num2[j2]);

           int j3 = (int) (Math.random() * ) % 6;

           l3.setText(num2[j3]);

           int j4 = (int) (Math.random() * ) % 6;

           l4.setText(num2[j4]);

           int j5 = (int) (Math.random() * ) % 6;

           l5.setText(num2[j5]);

           int j6 = (int) (Math.random() * ) % 6;

           l6.setText(num2[j6]);

           if (j1 == j2 && j2 == j3 || j4 == j5 && j5 == j6 || j1 == 1

             && j2 == 2 && j3 == 3 && j4 == 4 && j5 == 5 && j6 == 6

             || j1 == 6 && j2 == 5 && j3 == 4 && j4 == 3 && j5 == 2

             && j6 == 1) {

            l7.setBackground(Color.red);

            l7.setText("特等奖");

           } else if (j1 > j2 && j2 > j3 || j3 > j2 && j2 > j1 || j4 > j5

             && j5 > j6 || j6 > j5 && j5 > j4 || j1 == j2

             && j5 == j4 || j1 == j2 && j5 == j6 || j3 == j2

             && j4 == j5 || j5 == j6 && j2 == j3) {

            l7.setBackground(Color.YELLOW);

            l7.setText("一等奖");

           } else {

            l7.setBackground(Color.lightGray);

            l7.setText("未中奖,加油!");

           }

          }

         });

         l3.addActionListener(new ActionListener() {

          public void actionPerformed(ActionEvent arg0) {

           // TODO Auto-generated method stub

           int j1 = (int) (Math.random() * ) % 6;

           l1.setText(num2[j1]);

           int j2 = (int) (Math.random() * ) % 6;

           l2.setText(num2[j2]);

           int j3 = (int) (Math.random() * ) % 6;

           l3.setText(num2[j3]);

           int j4 = (int) (Math.random() * ) % 6;

           l4.setText(num2[j4]);

           int j5 = (int) (Math.random() * ) % 6;

           l5.setText(num2[j5]);

           int j6 = (int) (Math.random() * ) % 6;

           l6.setText(num2[j6]);

           if (j1 == j2 && j2 == j3 || j4 == j5 && j5 == j6 || j1 == 1

             && j2 == 2 && j3 == 3 && j4 == 4 && j5 == 5 && j6 == 6

             || j1 == 6 && j2 == 5 && j3 == 4 && j4 == 3 && j5 == 2

             && j6 == 1) {

            l7.setBackground(Color.red);

            l7.setText("特等奖");

           } else if (j1 > j2 && j2 > j3 || j3 > j2 && j2 > j1 || j4 > j5

             && j5 > j6 || j6 > j5 && j5 > j4 || j1 == j2

             && j5 == j4 || j1 == j2 && j5 == j6 || j3 == j2

             && j4 == j5 || j5 == j6 && j2 == j3) {

            l7.setBackground(Color.YELLOW);

            l7.setText("一等奖");

           } else {

            l7.setBackground(Color.lightGray);

            l7.setText("未中奖,加油!");

           }

          }

         });

         l2.addActionListener(new ActionListener() {

          public void actionPerformed(ActionEvent arg0) {

           // TODO Auto-generated method stub

           int j1 = (int) (Math.random() * ) % 6;

           l1.setText(num2[j1]);

           int j2 = (int) (Math.random() * ) % 6;

           l2.setText(num2[j2]);

           int j3 = (int) (Math.random() * ) % 6;

           l3.setText(num2[j3]);

           int j4 = (int) (Math.random() * ) % 6;

           l4.setText(num2[j4]);

           int j5 = (int) (Math.random() * ) % 6;

           l5.setText(num2[j5]);

           int j6 = (int) (Math.random() * ) % 6;

           l6.setText(num2[j6]);

           if (j1 == j2 && j2 == j3 || j4 == j5 && j5 == j6 || j1 == 1

             && j2 == 2 && j3 == 3 && j4 == 4 && j5 == 5 && j6 == 6

             || j1 == 6 && j2 == 5 && j3 == 4 && j4 == 3 && j5 == 2

             && j6 == 1) {

            l7.setBackground(Color.red);

            l7.setText("特等奖");

           } else if (j1 > j2 && j2 > j3 || j3 > j2 && j2 > j1 || j4 > j5

             && j5 > j6 || j6 > j5 && j5 > j4 || j1 == j2

             && j5 == j4 || j1 == j2 && j5 == j6 || j3 == j2

             && j4 == j5 || j5 == j6 && j2 == j3) {

            l7.setBackground(Color.YELLOW);

            l7.setText("一等奖");

           } else {

            l7.setBackground(Color.lightGray);

            l7.setText("未中奖,加油!");

           }

          }

         });

         l1.addActionListener(new ActionListener() {

          public void actionPerformed(ActionEvent arg0) {

           // TODO Auto-generated method stub

           int j1 = (int) (Math.random() * ) % 6;

           l1.setText(num2[j1]);

           int j2 = (int) (Math.random() * ) % 6;

           l2.setText(num2[j2]);

           int j3 = (int) (Math.random() * ) % 6;

           l3.setText(num2[j3]);

           int j4 = (int) (Math.random() * ) % 6;

           l4.setText(num2[j4]);

           int j5 = (int) (Math.random() * ) % 6;

           l5.setText(num2[j5]);

           int j6 = (int) (Math.random() * ) % 6;

           l6.setText(num2[j6]);

           if (j1 == j2 && j2 == j3 || j4 == j5 && j5 == j6 || j1 == 1

             && j2 == 2 && j3 == 3 && j4 == 4 && j5 == 5 && j6 == 6

             || j1 == 6 && j2 == 5 && j3 == 4 && j4 == 3 && j5 == 2

             && j6 == 1) {

            l7.setBackground(Color.red);

            l7.setText("特等奖");

           } else if (j1 > j2 && j2 > j3 || j3 > j2 && j2 > j1 || j4 > j5

             && j5 > j6 || j6 > j5 && j5 > j4 || j1 == j2

             && j5 == j4 || j1 == j2 && j5 == j6 || j3 == j2

             && j4 == j5 || j5 == j6 && j2 == j3) {

            l7.setBackground(Color.YELLOW);

            l7.setText("一等奖");

           } else {

            l7.setBackground(Color.lightGray);

            l7.setText("未中奖,加油!");

           }

          }

         });

         Font font = new Font("", Font.BOLD, );

         l1.setFont(font);

         l2.setFont(font);

         l3.setFont(font);

         l4.setFont(font);

         l5.setFont(font);

         l6.setFont(font);

         l7.setFont(font);

         l8.setFont(font);

         l9.setFont(font);

         add(l1);

         add(l2);

         add(l3);

         add(l4);

         add(l5);

         add(l6);

         add(l7);

         add(l8);

         add(l9);

        }

        public static void main(String[] args) {

         // TODO Auto-generated method stub

         frame = new 抽奖游戏();

         frame.setTitle("抽奖大战");

         frame.setSize(, );

         frame.setLocationRelativeTo(null);

         frame.setVisible(true);

         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        }

       }

求VB写的循环人名抽奖程序源代码

       在定义函数时有时在语句前,有的在语句后。

       希望能帮到你!

       // giftDlg.h : header file

       //

       #if !defined

       #if _MSC_VER >

       #pragma once

       #endif // _MSC_VER >

       // CGiftDlg dialog

       class CGiftDlg : public CDialog

       {

       // Construction

       public:

        int FreeMem();

        int ReSetData();

        int InitData(); //初始化数组

        CGiftDlg(CWnd* pParent = NULL); // standard constructor

        char *code[];//指向身份证号数组的指针

        char *name[];//指向姓名数组的指针

        char data[]; //随机数组

        int ptr; //进度条当前指向随机数组的指针

        int totalid; //参加抽奖的id总数,如果抽出一个,自减1

        bool bstart; //标记进度条是否在滚动

       // Dialog Data

        //{ { AFX_DATA(CGiftDlg)

        enum { IDD = IDD_GIFT_DIALOG };

        CButton m_btgo;

        CString m_code;

        CString m_msg;

        //}}AFX_DATA

        // ClassWizard generated virtual function overrides

        //{ { AFX_VIRTUAL(CGiftDlg)

        protected:

        virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support

        //}}AFX_VIRTUAL

       // Implementation

       protected:

        HICON m_hIcon;

        // Generated message map functions

        //{ { AFX_MSG(CGiftDlg)

        virtual BOOL OnInitDialog();

        afx_msg void OnPaint();

        afx_msg HCURSOR OnQueryDragIcon();

        virtual void OnOK();

        afx_msg void OnTimer(UINT nIDEvent);

        afx_msg void OnCancelMode();

        virtual void OnCancel();

        //}}AFX_MSG

        DECLARE_MESSAGE_MAP()

       };

       //{ { AFX_INSERT_LOCATION}}

       // Microsoft Visual C++ will insert additional declarations immediately before the previous line.

       #endif // !defined(AFX_GIFTDLG_H__D8D4EF_F4_4F__FBFF__INCLUDED_)

       // giftDlg.cpp : implementation file

       //

       #include "stdafx.h"

       #include "gift.h"

       #include "giftDlg.h"

       #ifdef _DEBUG

       #define new DEBUG_NEW

       #undef THIS_FILE

       static char THIS_FILE[] = __FILE__;

       #endif

       // CGiftDlg dialog

       CGiftDlg::CGiftDlg(CWnd* pParent /*=NULL*/)

       : CDialog(CGiftDlg::IDD, pParent)

       {

        //{ { AFX_DATA_INIT(CGiftDlg)

        m_code = _T("");

        m_msg = _T("");

        //}}AFX_DATA_INIT

        // Note that LoadIcon does not require a subsequent DestroyIcon in Win

        m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);

       }

       void CGiftDlg::DoDataExchange(CDataExchange* pDX)

       {

        CDialog::DoDataExchange(pDX);

        //{ { AFX_DATA_MAP(CGiftDlg)

        DDX_Control(pDX, IDOK, m_btgo);

        DDX_Text(pDX, IDC_STATIC_CODE2, m_code);

        DDX_Text(pDX, IDC_STATIC_MSG, m_msg);

        //}}AFX_DATA_MAP

       }

       BEGIN_MESSAGE_MAP(CGiftDlg, CDialog)

       //{ { AFX_MSG_MAP(CGiftDlg)

       ON_WM_PAINT()

       ON_WM_QUERYDRAGICON()

       ON_WM_TIMER()

       ON_WM_CANCELMODE()

        //}}AFX_MSG_MAP

       END_MESSAGE_MAP()

       // CGiftDlg message handlers

       BOOL CGiftDlg::OnInitDialog()

       {

        CDialog::OnInitDialog();

        InitData();

        bstart=false;

        // Set the icon for this dialog. The framework does this automatically

        // when the application's main window is not a dialog

        SetIcon(m_hIcon, TRUE); // Set big icon

        SetIcon(m_hIcon, FALSE); // Set small icon

        // TODO: Add extra initialization here

        m_msg.Format ("按开始键开始滚动,抽奖箱中人数:%d",totalid);

        UpdateData(FALSE);

        return TRUE; // return TRUE unless you set the focus to a control

       }

       // the minimized window.

       HCURSOR CGiftDlg::OnQueryDragIcon()

       {

        return (HCURSOR) m_hIcon;

       }

       void CGiftDlg::OnOK()

       {

        // TODO: Add extra validation here

        if(bstart)

        {

        KillTimer(1);

        bstart=false;

        m_msg.Format ("按开始键开始滚动,抽奖箱中人数:%d",totalid-1);

        m_code.Format ("抽出的号码:%s\n姓名:%s",code[data[ptr]],name[data[ptr]]);

        //AfxMessageBox(m_code);

        ReSetData();//剔除抽出的号码,重新打乱

        if(totalid<1)

        {

        m_btgo.EnableWindow (FALSE);

        }

        m_btgo.SetWindowText ("开始");

        }

        else

        {

        SetTimer(1, ,NULL);

        bstart=true;

        m_msg.Format ("按停止键抽一个奖");

        m_btgo.SetWindowText ("停止");

        }

        UpdateData(FALSE);

        //CDialog::OnOK();

       }

       void CGiftDlg::OnTimer(UINT nIDEvent)

       {

        // TODO: Add your message handler code here and/or call default

        m_code.Format ("现在的号码:%s",code[data[ptr]]);

        UpdateData(FALSE);

        ptr++;

        ptr%=totalid;

        CDialog::OnTimer(nIDEvent);

       }

       void CGiftDlg::OnCancelMode()

       {

        CDialog::OnCancelMode();

        // TODO: Add your message handler code here

       }

       int CGiftDlg::InitData()

       {

        FILE * fp=fopen("id.txt","r");

        ptr=0;

        totalid=1;

        if (fp==NULL)

        {

        return 0;

        }

        char buf[];

        int line=0;

        while(!feof(fp))

        {

        char *p=fgets(buf,,fp);

        if (p!=NULL)

        {

        name[line]=(char*)malloc();

        code[line]=(char*)malloc();

        memset(code[line],0,);

        memset(name[line],0,);

        int flag=0;

        for(int i=0;i<&&buf[i]!='\0';i++)

        {

        if((buf[i]!=',' )&& (flag==0))

        {

        code[line][i]=buf[i];

        }

        else if(flag==0)

        {

        flag=i;

        }

        else if((buf[i]!=',' )&& (flag!=0))

        {

        name[line][i-flag-1]=buf[i];

        }

        }

        TRACE("%s-%s",code[line],name[line]);

        memset(buf,0,);

        line++;

        }

        }

        fclose(fp);

        for(int j=0;j<line;j++)

        {

        data[j]=j;

        }

        for(int i=0;i<line;i++)

        {

        int pos=rand()%(line-i)+i;

        int temp=data[i];

        data[i]=data[pos];

        data[pos]=temp;

        TRACE("%d",data[i]);

        }

        totalid=line;

        return 1;

       }

       int CGiftDlg::ReSetData()

       {

        //ptr剔除,与最后一个交换,然后释放内存

        int line=totalid;

        int temp=data[ptr];

        data[ptr]=data[line-1];

        data[line-1]=temp;

        //AfxMessageBox(name[data[line-1]]);

        free(code[data[line-1]]);

        free(name[data[line-1]]);

        totalid--;

        line--;

        ptr=0;

        for(int i=0;i<line;i++)//重新打乱

        {

        int pos=rand()%(line-i)+i;

        int temp=data[i];

        data[i]=data[pos];

        data[pos]=temp;

        TRACE("%d",data[i]);

        }

       return 1;

       }

       int CGiftDlg::FreeMem()

       {

        int line=totalid;

        for(int i=0;i<line;i++)

        {

        free(code[i]);

        free(name[i]);

        }

        return 1;

       }

       void CGiftDlg::OnCancel()

       {

        // TODO: Add extra cleanup here

        FreeMem();

        CDialog::OnCancel();

       }

       id.txt

       ,章鱼

       ,李光

       X,周瑜

       ,韩信

       ,沈兵

       ,宏志

       X,范进

       ,曾国

       ,乱马

       ,贾海

急寻VB抽奖程序代码

       我和楼上的差不多,只是觉得楼上的随机抽奖并非随机的,他是由前往后快速循环,人少没关系,人一多,这样有失游戏的公平性,并非绝对的随机抽奖。

       我就将他的程序进一步修改了一下。

       一个Command,一个timer,一个label

       名单存入电脑D盘的1.txt文件中,名单是一行一个名字即可。

       程序如下:

       Dim a() As String

       Dim i As Integer

       Private Sub Command1_Click()

       If Command1.Caption = "开始" Then

          Command1.Caption = "暂停"

          Timer1.Enabled = True

       ElseIf Command1.Caption = "暂停" Then

          Command1.Caption = "开始"

          Timer1.Enabled = False

       End If

       End Sub

       Private Sub Form_Load()

        

        i = 0

       '定义名单跳转的时间间隔为ms

        Timer1.Interval = 

        Timer1.Enabled = False

        Command1.Caption = "开始"

        

        Label1.Alignment = 2         '字体居中

        Label1.Font = "微软雅黑"     '字体为微软雅黑

        Label1.FontSize =          '设置字体大小

        

        '读取名单,注意:名单必须已经放在D盘的1.txt文件内

        Open "d:\1.txt" For Input As #1

        Do Until EOF(1)

         i = i + 1

        ReDim Preserve a(1 To i) As String

        Line Input #1, a(i)      '按行读取,所以名单名字必须一行一个

        Loop

        

       End Sub

       Private Sub Timer1_Timer()

       Dim j As Integer

         

         Randomize

         'i为名单的人数,Rnd为0-1之间的数,不包括0,1

         j = Int(1 + Rnd * i)

         Label1.Caption = a(j)

       End Sub

搜索关键词:隧道源码