1 static void Main(string[] args)
2 {
3 int s;
4 while (true)
5 {
6 Console.Write("请输入一个大于1的合数:");
7 s = int.Parse(Console.ReadLine());
8 if (s <= 1)
9 {
10 Console.Write("输入有误,请请按Enter键继续:");
11 }
12 //判断是否为合数,否为退出清屏,再输入
13 else
14 {
15 bool a = false;
16 for (int i = 2; i < s; i++)
17 {
18 if (s % i == 0)
19 {
20 a = true;
21 break;
22 }
23 }
24 if (a)
25 {
26 break;
27 }
28 else
29 {
30 Console.WriteLine("您输入的数不是合数,请按Enter键继续");
31 }
32 }
33 Console.ReadLine();
34 Console.Clear();
35 }
36 //把能整除合数的最小质数放入集合
37 int g = s;
38 List<int> nums = new List<int>();
39
40 while (g != 1)
41 {
42 for (int i = 2; i <= g; i++)
43 {
44 if (g % i == 0)
45 {
46 g = g / i;
47 nums.Add(i);
48 break;
49 }
50 }
51 }
52 //输出
53 string result = s + "=";
54 for (int i = 0; i < nums.Count; i++)
55 {
56 result += nums[i];
57 if (i < nums.Count - 1)
58 {
59 result += "x";
60 }
61 }
62 Console.WriteLine(result);
63 Console.ReadLine();
64
65 }