许庭洲 发表于 2012-9-21 08:03
参数数组:C#提供了一个特殊的关键字,它允许在调用一个方法时提供数量可变的参数,而不是由方法事先固定好 ...
你的答复提示了我,可以写个方法,让经过这个方法的数组长度+2- private static int[] StoreNum(int[] numArray,int num1, int num2)
- {
- int[] temp = numArray;
- numArray = new int[numArray.Length + 2];
- for (int i = 0; i < numArray.Length - 2; i++)
- {
- numArray[i] = temp[i];
- }
- numArray[numArray.Length - 2] = num1;
- numArray[numArray.Length - 1] = num2;
- return numArray;
- }
- static void Main(string[] args)
- {
- int[] storeNum = new int[0];
- int sumI;
- int sumJ;
- bool flag;
- int[] num12 = { 0, 1 };
- int[] num23 = { 0, 1, 2, 3 };
- num12 = num23;
- for (int i = 1; i <= 3000; i++)
- {
- flag = true;
- sumI = 0;
- sumJ = 0;
- for (int j = 1; j < storeNum.Length; j++)
- {
- if (i == storeNum[j])
- {
- flag = false;
- break;
- }
- }
- if (flag == false)
- {
- continue;
- }
- for (int h = 1; h < i; h++)
- {
- if (i % h == 0)
- {
- sumI += h;
- }
- }
- if (sumI <= 3000)
- {
- for (int k = 1; k < sumI; k++)
- {
- if (sumI % k == 0)
- {
- sumJ += k;
- }
- }
- if (sumJ == i && i != sumI)
- {
- Console.WriteLine("{0}与{1}是一对亲密数", i, sumI);
- storeNum=StoreNum(storeNum, i, sumI);
- }
- }
- }
- Console.ReadKey();
- }
复制代码 |