c# 如何产生 随机的1-10位的包【数字】或【英文字母】字符串
c#如何产生随机的1-10位的包【数字】或【英文字母】字符串,如:5312ag4dfs4dhdsjk46f...
c# 如何产生 随机的1-10位的包【数字】或【英文字母】字符串,如:
53
12a
g4dfs
4dhdsjk46f 展开
53
12a
g4dfs
4dhdsjk46f 展开
4个回答
展开全部
用Random类的方法即可~~下面是完整代码~~
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace 回答问题11
{
class Program
{
static string GetString(int stringLen)
{
Random r = new Random();//定义随机类
string ret = ""; //初始化一个字符串变量
string charArrayList = "0123456789abcdefghijklmnopqrstuvwxyz";//随机字符库
for (int i = 0; i < stringLen; i++)
{
int num = r.Next(charArrayList.Length);//取得一个小于字符库长度的随机数
ret += charArrayList.Substring(num, 1);
}
return ret; //获取制定个数的随机字符串
}
static void Main(string[] args)
{
Console.WriteLine("请输入您要产生的随机数个数:");
int n=Convert.ToInt32(Console.ReadLine());
Console.WriteLine("输出随机数:{0}", GetString(n));
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace 回答问题11
{
class Program
{
static string GetString(int stringLen)
{
Random r = new Random();//定义随机类
string ret = ""; //初始化一个字符串变量
string charArrayList = "0123456789abcdefghijklmnopqrstuvwxyz";//随机字符库
for (int i = 0; i < stringLen; i++)
{
int num = r.Next(charArrayList.Length);//取得一个小于字符库长度的随机数
ret += charArrayList.Substring(num, 1);
}
return ret; //获取制定个数的随机字符串
}
static void Main(string[] args)
{
Console.WriteLine("请输入您要产生的随机数个数:");
int n=Convert.ToInt32(Console.ReadLine());
Console.WriteLine("输出随机数:{0}", GetString(n));
}
}
}
展开全部
static void Main()
{
ArrayList lvArray = new ArrayList();
string lvStr = "0123456789abcdefghijklmnopqrstuvwxyz";
for (int i = 0; i < lvStr.Length; i++)
{
lvArray.Add(lvStr[i].ToString());
}
Random lvRan = new Random();
int lvInt =lvRan.Next(1, 10); //随机获取本次要产生的字符个数
int lvLeng = 0; //用于记录已获取字符串的长度
string lvString = ""; //存放获取的字符
Next:
lvLeng++;
int lvA = lvRan.Next(0, lvArray.Count);
lvString += lvArray[lvA].ToString();
lvArray.RemoveAt(lvA); //如需想获取可重复的只需把此句注释掉
if (lvLeng == lvInt)
{
Console.Write(lvString);
Console.ReadLine();
}
else
{
goto Next; //再次获取
}
}
{
ArrayList lvArray = new ArrayList();
string lvStr = "0123456789abcdefghijklmnopqrstuvwxyz";
for (int i = 0; i < lvStr.Length; i++)
{
lvArray.Add(lvStr[i].ToString());
}
Random lvRan = new Random();
int lvInt =lvRan.Next(1, 10); //随机获取本次要产生的字符个数
int lvLeng = 0; //用于记录已获取字符串的长度
string lvString = ""; //存放获取的字符
Next:
lvLeng++;
int lvA = lvRan.Next(0, lvArray.Count);
lvString += lvArray[lvA].ToString();
lvArray.RemoveAt(lvA); //如需想获取可重复的只需把此句注释掉
if (lvLeng == lvInt)
{
Console.Write(lvString);
Console.ReadLine();
}
else
{
goto Next; //再次获取
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你需要的最基本的程序是产生0到1之间均匀分布的程序,可以通过乘以10,取整加 1, 均匀地产生1,2,3,。。。10,再复杂点是两位数,三位数,你自己处理一下;在上面的基础上,你可以均匀产生1到26的均匀分布,然后用ASII码将1和a,2和b对应起来,你就得到了abcd...的均匀分布,再麻烦也是你自己想法处理吧。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询