C#组成考题字符串
题目描述
假定已经获取题库中的试题号,并存放在数组arrayKT中。例如, int [] arrayKT={10,13,18,19,20,22,30,31}。定义一个静态成员方法,该方法实现从上述数组中随机抽出n(n=arrayKT.Length-1)道考题,并组成一个考题字符串。比如,随机从arrayKT中抽取n题组成考题字符串:“10,13,18,20,22,30,31”。要求,组成考题字符串中考题不重复,输出所有可能的字符串。
输入
题目的个数
数组中的考题号;
输出
所有可能的考题字符串;
样例输入
5 1 2 3 4 5
样例输出
1 2 3 4 1 2 3 5 1 2 4 5 1 3 4 5 2 3 4 5
using System;
using System.Collections;
namespace sample
{
class Program
{
static void Main(string[] args)
{
int n;
int.TryParse(Console.ReadLine(), out n);
ArrayList arr = new ArrayList();
string str = Console.ReadLine();
String[] s = str.Split(" ".ToCharArray(),StringSplitOptions.RemoveEmptyEntries);
int len = s.Length;
for (int i = 0; i < len; i++)
{
int temp;
int.TryParse(s[i], out temp);
arr.Add(temp);
}
len = arr.Count;
ArrayList arr2 = new ArrayList();
for (int i = len-1; i >=0; i--)
{
for(int j = 0; j < len; j++)
{
if(j != i)
{
arr2.Add(arr[j]);
}
}
for(int j = 0; j < len-1; j++)
{
if (j != len - 2) { Console.Write("{0} ", arr2[j]); }
else { Console.WriteLine(arr2[j]); }
}
arr2.Clear();
}
}
}
}