c - 在 C 中查找素数
问题描述
我目前正在处理这个问题并计划没有功能。但是,我有一个问题。为什么将 1 初始化为标识符“prime”?
int main() {
int loop, number;
int prime = 1;
number = 11;
for(loop = 2; loop < number; loop++) {
if((number % loop) == 0) {
prime = 0;
}
}
if (prime == 1)
printf("%d is prime number.", number);
else
printf("%d is not a prime number.", number);
return 0;
}
解决方案
因为1
在条件中使用prime == 1
,因此1
意味着该数字是质数。
如果将条件写为,则可以使用适合素数标志(未找到除数标志)prime
的任何非零数。int
例如,您可以使用1
, 42
, 200
, 334
, 555
, 777
, 999
, 2021
,-1
等。
推荐阅读
- java - mvn 未被识别为内部或外部命令
- gitlab-ci - 使用 msdeploy 部署时使用的 dll grpc_csharp_ext.x64.dll
- javascript - Django 不会注销用户
- java - 我想简单地通过android发送get请求,但它不起作用我的代码如下,
- php - 我在 Linux Ubuntu 18.04 上使用 Yii 框架和 maria db 时的时间问题
- visual-studio-code - 使根文件夹在 VSCode 资源管理器中脱颖而出
- c# - Web Api 中的 Unity 容器 PerRequestLifetimeManager
- javascript - 扁平化分层 json 数据以进行表格显示
- c# - IronWebScraper 在抓取之前需要先登录
- python - 如果存在第二个列表中的元素,如何遍历两个列表并从第一个列表中提取元素?