C#编程题:提示用户输入一个数利用while语句判断该数是否是素数并打印。素数质数只能被1和这个数字本身整除的数字1不是质数最小的质数是2
以下是解决该问题的C#代码:
using System;
class Program
{
static void Main(string[] args)
{
Console.Write("请输入一个数:");
int num = int.Parse(Console.ReadLine());
bool isPrime = true;
if (num <= 1)
{
isPrime = false;
}
else
{
int i = 2;
while (i <= Math.Sqrt(num))
{
if (num % i == 0)
{
isPrime = false;
break;
}
i++;
}
}
if (isPrime)
{
Console.WriteLine(num + " 是素数");
}
else
{
Console.WriteLine(num + " 不是素数");
}
}
}
该代码首先提示用户输入一个数,并将输入的字符串转换为整数类型。然后使用一个bool类型的变量isPrime来表示该数是否是素数,初始化为true。
接下来,通过判断输入的数是否小于等于1来排除不是素数的情况。然后使用一个while循环,从2开始逐个判断是否能被该数整除,直到判断到根号n为止。如果找到能整除该数的因子,即num % i == 0,则将isPrime设置为false,并使用break语句跳出循环。
最后,根据isPrime的值来输出结果。如果isPrime为true,则表示该数是素数,否则不是素数
原文地址: https://www.cveoy.top/t/topic/hFo4 著作权归作者所有。请勿转载和采集!