答案:
1. using System;
using System.Collections.Generic;
using System.IO;
class Test2
{
static void TMain()
{
int N = 20;
Random r = new Random();
List<int> l = new List<int>(N);
for (int i = 0; i < N; i++)
{
int a = r.Next(10, 100);
if (!l.Contains(a))
{
l.Add(a);
}
}
l.Sort();
foreach (int a in l)
{
Console.WriteLine(a);
}
}
}
2.using System;
using System.Collections.Generic;
class Test3
{
static void TMain()
{
int N = 1000;
List<int> primes = new List<int>();
for (int i = 3; i < N; i += 2)
{
bool isprime = true;
foreach (int prime in primes)
{
if (i % prime == 0)
{
isprime = false;
break;
}
}
if (isprime) primes.Add(i);
// Console.Write(i + " ");
}
List<int> l = new List<int>();
foreach (int prime in primes)
{
if (IsDigitSumEven(prime))
{
l.Add(prime);
}
}
foreach (int prime in l)
{
Console.Write(prime + " ");
}
Console.ReadLine();
}
static bool IsDigitSumEven(int n)
{
int sum = 0;
while (n > 0)
{
sum += n % 10;
n /= 10;
}
return sum % 2 == 0;
}
}