asp.net(c#)两种随机数的算法,可用抽考题_实用技巧

第一种算法,存大一点问题。没有查出来 

复制代码 代码如下:

static void Main(string[] args) 

// 
// TODO: 在此处添加代码以启动应用程序 
int singletitlemeasure=5; 
int n=1;//声明一个表示考试类型的int变量 
Random ran=new Random(unchecked((int)DateTime.Now.Ticks)); 
int Int1Random; 
switch(n) 

case 1://表示为单选题 

int i=1,k=1; 
int[] **i=new int[singletitlemeasure+1];//声明一个用于保存题号的数组 
int temp;//声明一个临时保存随机值的数组 
Int1Random=ran.Next(1,singletitlemeasure); 
**i=Int1Random; 
Console.WriteLine("**i["+i+"]="+**i); 
do 
{ k=1; Int1Random=ran.Next(1,singletitlemeasure); temp=Int1Random; Console.WriteLine("temp:"+temp); do { if(temp!=**i[k]) { 
Console.WriteLine("**i["+k+"]="+**i[k]); 
k++; 
Console.WriteLine("循环了"+(k-1)+"次"); 

else 

i--; 
Console.WriteLine("i="+i); } }while(k<i); i++; **i=temp; Console.WriteLine("**i["+i+"]="+**i); }while(i<=singletitlemeasure-1); for (i = 1; i <=5; i++) 
{ Console.Write("Int1Random="); Console.WriteLine(**i); 
} break; 

case 2://表示为多选题 { Console.WriteLine("Int2Random="); break; 

case 3://表示为判断题 

Console.WriteLine("Int3Random="); 
break; 

default: 
{ Console.WriteLine("Invalid selection. Please select 1, 2, or 3."); 

break; 

Console.Read(); 

复制代码 代码如下:

using System; 
namespace Temp 

/// <summary> 
/// Class1 的摘要说明。 
/// </summary> 
class Class1 

/// <summary> 
/// 应用程序的主入口点。 
/// </summary> 
[STAThread] 
static void Main(string[] args) 

// 
// TODO: 在此处添加代码以启动应用程序 
int singletitlemeasure=20;//题库中的数 
int Int1Random;//临时产生的随机数 
int[] **i=new int[singletitlemeasure+1];//声明一个用于保存题号的数组 
bool bflag=true; 
bool bFlag=true; 
int n=1;//声明一个表示考试类型的int变量 
int i=1;//声明外循环数 
switch(n) 

case 1://表示为单选题 

do 

//Random ran=new Random(unchecked((int)DateTime.Now.Ticks));//这样产生的随机数有点规律 
Random ran=new Random(unchecked((int)DateTime.Now.Millisecond));//这样产生的随机数更加随机一些 Int1Random=ran.Next(1,singletitlemeasure+1); 
//**i=Int1Random; 
//Console.WriteLine("**i["+i+"]="+**i); 
Console.WriteLine("Int1Random="+Int1Random); 
int temp=Int1Random; 
if( bFlag==true) 

**i=Int1Random; 
Console.WriteLine("**i["+i+"]="+**i); 
bFlag=false; 
i++; 

else 

bflag=true; 
int k=1;//声明内循环数 
do 

if(temp==**i[k]) 

//Console.WriteLine("**i["+k+"]="+**i[k]); 
bflag=false; 
break; 

k++; 
}while(k<i); 
if( bflag==true) 

**i[k]=temp; 
Console.WriteLine("**i["+i+"]="+**i); 
i++; 


}while(i<=5); 

for(i=1;i<=5;i++) 

Console.WriteLine("**i["+i+"]="+**i); 

break; 

case 2://表示为多选题 

Console.WriteLine("Int2Random="); 
break; 

case 3://表示为判断题 

Console.WriteLine("Int3Random="); 
break; 

default: 

Console.WriteLine("Invalid selection. Please select 1, 2, or 3."); 

break; 

Console.Read(); 
// 


时间: 2024-09-18 04:04:17

asp.net(c#)两种随机数的算法,可用抽考题_实用技巧的相关文章

控件开发时两种JS嵌入资源方式的使用方法_实用技巧

第一种: 直接把要嵌入的JS文件属性设置为"嵌入的资源".protected override void OnInit(EventArgs e) {       base.OnInit (e);        if(!base.Page.IsStartupScriptRegistered("Script"))         {                 Assembly assembly = typeof(TestControl).Assembly;    

c#中两种不同的存储过程调用与比较_实用技巧

存储过程的调用在B/S系统中用的很多.传统的调用方法不仅速度慢,而且代码会随着存储过程的增多不断膨胀,难以维护.新的方法在一定程度上解决了这些问题. 在使用.NET的过程中,数据库访问是一个很重要的部分,特别是在B/S系统的构建过程中,数据库操作几乎成为了一个必不可少的操作.调用存储过程实现数据库操作使很多程序员使用的方法,而且大多数的程序员都是能使用存储过程就使用存储过程,很少直接使用SQL语句,所以存储过程是很有用而且很重要的. 存储过程简介 简单的说,存储过程是由一些SQL语句和控制语句组

asp.net中几种常用的身份验证方法总结_实用技巧

前言 在B/S系统开发中,经常需要使用"身份验证".因为web应用程序非常特殊,和传统的C/S程序不同,默认情况下(不采用任何身份验证方式和权限控制手段),当你的程序在互联网/局域网上公开后,任何人都能够访问你的web应用程序的资源,这样很难保障应用程序安全性.通俗点来说:对于大多数的内部系统.业务支撑平台等而言,用户必须登录,否则无法访问和操作任何页面.而对于互联网(网站)而言,又有些差异,因为通常网站的大部分页面和信息都是对外公开的,只有涉及到注册用户个人信息的操作,或者网站的后台

用 Asp.Net 建立一个在线 RSS 新闻聚合器的方法_实用技巧

随着办公室和家庭上网在线时间的延长,以及 Web 站点和可访问的互联网应用程序呈持续爆炸性增长,应用程序之间能数据共享变得越来越重要.在异构平台之间共享数据需要一种平台中立的数据格式,这种数据格式要求能易于通过标准的互联网协议来传输,而这正是XML的用武之地.因为XML文件本质上只是一个文本文件,其编码格式众所周知,而且现有的XML解析器能为所有主流编程语言所用,所以XML数据能被任何平台轻松使用.  Web 网站聚合就是一种使用 XML 来共享数据的范例,在新闻站点和网志中经常可以看到.采用 

ASP.NET生成eurl.axd Http异常错误的处理方法_实用技巧

在IIS6中同时启用了ASP.NET 2.0 和 ASP.NET 4.0 后,网站程序可能会出现如下错误:" System.Web.HttpException: Path '//eurl.axd/' was not found. " 错误发生的原因是当ASP.NET检测到Web站点配置为使用ASP.NET 4.0,本地ASP.NET 4.0 的组件会传递一个不能扩展的 URL到ASP.NET的管理程序作进一步处理.但是,如果一个低于ASP.NET 4.0 的网站配置为使用ASP.NET

Asp.net内置对象之Request对象(概述及应用)_实用技巧

前言:Request对象主要用于获取来自客户端的数据,如用户填入表单的数据.保存在客户端的Cookie等. 一.Request对象概述 1.主要属性    ApplicationPath  获取服务器上asp.net应用程序的虚拟应用程序根路径  Browser  获取有关正在请求的客户端的浏览器功能的信息,该属性值为:HttpBrowserCapabilities对  象  ContentEncoding  获取或设置实体主体的字符集.该属性值为表示客户端的字符集Encoding对象  Con

asp.net下常用的加密算法MD5、SHA-1应用代码_实用技巧

MD5 MD5的全称是Message-Digest Algorithm 5(信息-摘要算法),在90年代初由MIT Laboratory for Computer Science和RSA Data Security Inc的Ronald L. Rivest开发出来,经MD2.MD3和MD4发展而来.是一种不可逆的加密算法,目前是最牢靠的加密算法之一,尚没有能够逆运算的程序被开发出来,它对应任何字符串都可以加密成一段唯一的固定长度的代码. 特性: 首先,它不可逆,没有系统的方法可以知道MD5码原来

asp页面和Asp.net页面传中文参数UrlEncode编码以及接收解码_实用技巧

举例:asp.net用Get方式传输的URL为:"WebPage.asp?str="+HttpUtility.UrlEncode(str) ,解码方式为HttpUtility.UrlDecode(Request.QueryString["str"].ToString().Trim()) asp的Get方式传送为"webPage.aspx?str="+server.urlencode(str) 两种编码不统一 解决方案:在asp使用Get方式传送&

asp.net中javascript的引用(直接引入和间接引入)_实用技巧

Asp.net 中引入Javascript 的方法有很多.在做牛腩的时候主要讲了两种. 个人认为可以分为直接引入,和间接引入. 一.直接引入.在前台页面调用自定义的javascript 函数: 1.打开前台页面在 head 元素之间加入 script 元素,将 type 元素设置为 " text/javascript ".然后写javascript自定义的函数. 复制代码 代码如下: <head runat="server"> <script ty