永发信息网

c# 随机选择

答案:6  悬赏:40  手机版
解决时间 2021-03-20 06:19
  • 提问者网友:泪痣哥哥
  • 2021-03-19 14:44
c# 随机选择
最佳答案
  • 五星知识达人网友:野慌
  • 2021-03-19 15:56
首先将A,B,C组成一个数组,然后用Random 类的Next方法获取索引,注意的是Next方法取不到最大值,是个半区间;
string[] str=new str[3]{“A”,“B”,“C”};
Random rd=new Random();
int index =0; // 记录索引
string[] str_new =new string[3]; // 新数组
string s=string.Empty; // 记录上一次循环获得的字条串
for(int i=0;i<3;i++)
{
i ndex= rd.Next(0,str.length); // 注意数据str的索引是 0,1,2 而str数据的长度是3 因为Next取不到最大值。
while(str[index]==s)
{
index= rd.Next(0,str.length);
}
str_new[i]=str[index];
s = str[index];
}
全部回答
  • 1楼网友:空山清雨
  • 2021-03-19 20:17
不重复 很实用 string bianliang(string 变量1, string 变量2, string 变量3) {
string change = ""; string[] a = { 变量1, 变量2, 变量3 }; int[] ints = new int[3]; Random r = new Random(); for (int i = 0; i < a.Length; i++) {
int c = r.Next(1, 4); if (ints.Contains(c)) { i--; continue; } else { ints[i] = c; } } foreach (var item in ints) { change += a[item-1]; }
return change; }
  • 2楼网友:摆渡翁
  • 2021-03-19 20:08
random ran=new random();
for(int i=3;i>0;i--)
{
ran.Next(1,i);
}
  • 3楼网友:爱难随人意
  • 2021-03-19 19:06
放到List里随进一个数字除以三,余数肯定是 0,1,2里面的一个再从List里把相应的删掉再随进一个数字除以二*****
  • 4楼网友:执傲
  • 2021-03-19 18:14
建立一个数组a,b,c random随即数组的长度 或者长度然后removed 掉指定的数组值。然后continue 重新运行最后一次 数组为0的时候就break
  • 5楼网友:迟山
  • 2021-03-19 16:36
建一个问题的数组,然后用random函数随机选择其中的一个 然后获取 在进行循环在选择 必定以的数组长度少一个即可
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯