题目:编写控制台应用程序,一个自然数是素数,且它的数字位置经过任意对换后仍为素数,则称为绝对素数,例如13。试找出所有两位数的绝对素数。
using System; using System.Runtime.InteropServices.ComTypes; namespace 绝对素数 { class Program { static void Main(string[] args) { int a, b, x; int i, n, j; Console.WriteLine("所有两位数的绝对素数为:"); for (i = 10; i < 100; i++) { for (n = 2; n < i; n++)//判断素数 { if (i % n == 0) break; } if (i == n) { a = i / 10;//十位数 b = i % 10;//个位数 x = b * 10 + a;//数据重组 for (j = 2; j < x; j++)//再次判断素数 { if (x % j == 0) break; } if (x == j) { Console.Write("{0,5}", i); } } } Console.ReadKey(); } } }重难点解析
主要思路详解:进行两次素数判断判断素数方法(通用): for (n = 2; n < i; n++)//判断素数 { if (i % n == 0) break; } if (i == n) { Console.WriteLine("素数为"+i); }