2008年(909)
分类:
2008-05-06 21:46:42
下载本文示例源代码
近日在做一个考试软件时,需要每次题目不同且题数可定制,在C 没找到适用函数,就顺手做了一个较通用的C 的随机函数扩展,请大家编程时参考。
void randEx(int MAX,int NUM) { int k=0; int j=0; time_t t; //设置rand函数所用的启始种子值,以期每次产生的随机数序列均不相同。 srand((unsigned) time(&t)); for (k=1;k<=NUM;k )//定制随机数数量。 { RAND[k]=rand()%MAX;//定制随机数在0至最大值之间。 do { for (j=1;j具体用法:首先在你的工程中相应类头文件中定义一个整型数组RAND[],把此函数加入头文件,在相应的类实现中传递最大值和数量,输出随机数序列。详见示例工程, 示例工程中主要代码如下:
// TestRandDlg.h : header file // class CTestRandDlg : public CDialog { public: CTestRandDlg(CWnd* pParent = NULL); // standard constructor int RAND[20]; void randEx(int MAX,int NUM); CWnd* p_StaticWnd; ..... }// TestRandDlg.cpp : implementation file // ..... void CTestRandDlg::OnTestrand() { UpdateData(TRUE); randEx(m_nRandMax,m_nRandNum); CString str; if (m_nRandNum>=1){ str.Format("%d",RAND[1]); p_StaticWnd = GetDlgItem(IDC_STATIC1); p_StaticWnd->SetWindowText(str);} if (m_nRandNum>=2){ str.Format("%d",RAND[2]); p_StaticWnd = GetDlgItem(IDC_STATIC2); p_StaticWnd->SetWindowText(str);} if (m_nRandNum>=3){ str.Format("%d",RAND[3]); p_StaticWnd = GetDlgItem(IDC_STATIC3); p_StaticWnd->SetWindowText(str);} if (m_nRandNum>=4){ str.Format("%d",RAND[4]); p_StaticWnd = GetDlgItem(IDC_STATIC4); p_StaticWnd->SetWindowText(str);} if (m_nRandNum>=5){ str.Format("%d",RAND[5]); p_StaticWnd = GetDlgItem(IDC_STATIC5); p_StaticWnd->SetWindowText(str);} if (m_nRandNum>=6){ str.Format("%d",RAND[6]); p_StaticWnd = GetDlgItem(IDC_STATIC6); p_StaticWnd->SetWindowText(str);} if (m_nRandNum>=7){ str.Format("%d",RAND[7]); p_StaticWnd = GetDlgItem(IDC_STATIC7); p_StaticWnd->SetWindowText(str);} if (m_nRandNum>=8){ str.Format("%d",RAND[8]); p_StaticWnd = GetDlgItem(IDC_STATIC8); p_StaticWnd->SetWindowText(str);} if (m_nRandNum>=9){ str.Format("%d",RAND[9]); p_StaticWnd = GetDlgItem(IDC_STATIC9); p_StaticWnd->SetWindowText(str);} if (m_nRandNum>=10){ str.Format("%d",RAND[10]); p_StaticWnd = GetDlgItem(IDC_STATIC10); p_StaticWnd->SetWindowText(str);} UpdateData(FALSE); }
本工程在VC 6.0 WindowsXP中调试通过。
通信地址:(024000)内蒙赤峰市93106部队自动化站 下载本文示例代码
可定制大小和数量的随机数函数可定制大小和数量的随机数函数可定制大小和数量的随机数函数可定制大小和数量的随机数函数可定制大小和数量的随机数函数可定制大小和数量的随机数函数可定制大小和数量的随机数函数可定制大小和数量的随机数函数可定制大小和数量的随机数函数可定制大小和数量的随机数函数可定制大小和数量的随机数函数可定制大小和数量的随机数函数