考试程序中选择题选项随机 本帖最后由 skysonya_shisy 于 2011-07-31 21:48:39 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个是c++写的,还是和C#有很多不一样//---------------------------------------------------------------------------#include <vcl.h>#pragma hdrstop#include "Main.h"//---------------------------------------------------------------------------#pragma package(smart_init)#pragma resource "*.dfm"TfrmMain *frmMain;//---------------------------------------------------------------------------__fastcall TfrmMain::TfrmMain(TComponent* Owner) : TForm(Owner){}//---------------------------------------------------------------------------void __fastcall TfrmMain::Button1Click(TObject *Sender){ String s = chang(Edit1->Text,Edit2->Text) ; int t = s.Pos("$$$") ; Edit3->Text = s.SubString(1,t-1) ; Edit4->Text = s.Delete(1,t+2) ;}//---------------------------------------------------------------------------String TfrmMain::chang(String str,String da){ String st="",sd=""; String stx[10]; int i=0,j,t,n,r[10]; bool d[10]; while(i<10) r[i++] = 10 ; for(i=0;i<10;i++) { t = str.Pos(";"); if(!t) break; stx[i] = str.SubString(1,t-1); str = str.Delete(1,t); if(da.Pos(String(char(65+i)))>0) d[i] = true ; else d[i] = false ; } n = i ; for(i=0;i<Now().FormatString("nnss").ToInt();i++) random(n) ; for(i=0;i<n;i++) { rt: t = random(n); for(j=0;j<n;j++) { if(t == r[j]) goto rt; } r[i] = t ; } for(i=0;i<n;i++) { st = st + stx[r[i]] + ";" ; if(d[r[i]]) sd = sd + String(char(65+i)) ; } return st + "$$$" + sd;}//---------------------------------------------------------------------------void __fastcall TfrmMain::Button2Click(TObject *Sender){ int n,i=0,j,t,r[100] ; while(i<100) r[i++] = 100 ; try { n = Edit4->Text.ToInt() ; if(n>100) n = 100 ; } catch (Exception &exception) { n = 4 ; } for(i=0;i<Now().FormatString("nnss").ToInt();i++) random(n) ; for(i=0;i<n;i++) { rt: t = random(n); for(j=0;j<n;j++) { if(t == r[j]) goto rt ; } r[i] = t ; } Edit3->Text = "" ; for(i=0;i<n;i++) Edit3->Text = Edit3->Text + String(r[i]) + " " ;}//--------------------------------------------------------------------------- 如何在textbox中获取到listbox中移出的值 找到关于EnumChildWindows的代码,但是不会用,谁能帮帮我 请问如何知道某一个软件弹出一个框或窗体 [求助]ASP.NET C#有没有确认框.. WinForm-DataGrid行为控制问题(用DataTableStyles控制显示风格,文本框获取焦点时如何使光标自动到文本内容的末尾,默认为选中文本)? 为什么我的机子不能装msm? 很奇怪的问题!! 简单问题 C#中如何拦截WINDOWS消息? C#如何将EXCEL文件中的表格复制到word中 数据库表更新问题·~~ 问题求教
//---------------------------------------------------------------------------#include <vcl.h>
#pragma hdrstop#include "Main.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TfrmMain *frmMain;
//---------------------------------------------------------------------------
__fastcall TfrmMain::TfrmMain(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------void __fastcall TfrmMain::Button1Click(TObject *Sender)
{
String s = chang(Edit1->Text,Edit2->Text) ;
int t = s.Pos("$$$") ;
Edit3->Text = s.SubString(1,t-1) ;
Edit4->Text = s.Delete(1,t+2) ;
}
//---------------------------------------------------------------------------
String TfrmMain::chang(String str,String da)
{
String st="",sd="";
String stx[10];
int i=0,j,t,n,r[10];
bool d[10];
while(i<10)
r[i++] = 10 ;
for(i=0;i<10;i++)
{
t = str.Pos(";");
if(!t)
break;
stx[i] = str.SubString(1,t-1);
str = str.Delete(1,t);
if(da.Pos(String(char(65+i)))>0)
d[i] = true ;
else
d[i] = false ;
}
n = i ;
for(i=0;i<Now().FormatString("nnss").ToInt();i++)
random(n) ;
for(i=0;i<n;i++)
{
rt: t = random(n);
for(j=0;j<n;j++)
{
if(t == r[j])
goto rt;
}
r[i] = t ;
}
for(i=0;i<n;i++)
{
st = st + stx[r[i]] + ";" ;
if(d[r[i]])
sd = sd + String(char(65+i)) ;
}
return st + "$$$" + sd;
}
//---------------------------------------------------------------------------
void __fastcall TfrmMain::Button2Click(TObject *Sender)
{
int n,i=0,j,t,r[100] ;
while(i<100)
r[i++] = 100 ;
try
{
n = Edit4->Text.ToInt() ;
if(n>100)
n = 100 ;
}
catch (Exception &exception)
{
n = 4 ;
}
for(i=0;i<Now().FormatString("nnss").ToInt();i++)
random(n) ;
for(i=0;i<n;i++)
{
rt: t = random(n);
for(j=0;j<n;j++)
{
if(t == r[j])
goto rt ;
}
r[i] = t ;
}
Edit3->Text = "" ;
for(i=0;i<n;i++)
Edit3->Text = Edit3->Text + String(r[i]) + " " ;
}
//---------------------------------------------------------------------------