c - 打印输出 C 的问题
问题描述
所以我必须为学校编写代码。我做到了,但我的输出不是他们要求的方式。这段代码给了我两个不同数字之间的质数。所以我必须成行打印这些数字。但是,是的,下面的答案之间有零,你可以明白我的意思。我怎样才能解决这个问题?
#include <stdio.h>
int is_prime (int number)
{
int is_prime= 1, i;
if (number < 2)
{
is_prime = 0;
}
else
{
for(i = 2; (i * i) <= number; i++)
{
if ((number % i) == 0)
{
is_prime = 0;
break;
}
else
{
is_prime = 1;
}
}
}
return is_prime;
}
int main (void)
{
int lower_limit, upper_limit, i;
scanf("%d\n%d", &lower_limit, &upper_limit);
for(i = lower_limit; i <= upper_limit; i++)
{
if (is_prime (i))
{
printf("\n%d", i);
}
else
{
printf("\n%d", is_prime(i));
}
}
return 0;
}
输出
0
11
0
13
0
0
0
17
0
19
0
参考
11
13
17
19
解决方案
它在这个if
块中:
if (is_prime (i))
{
printf("\n%d", i);
}
else
{
printf("\n%d", is_prime(i));
}
这说的是“如果数字是素数,打印它,否则打印它是否是素数(此时你已经确定它不是)”。
只是摆脱else
块。
推荐阅读
- mercurial - 如何删除已推送的 Mercurial 提交?
- angular - AG-GRID 无法将图标按钮添加到我的 ag-grid 中的 ag-grid 和多选复选框的每一行
- react-native - 如何修复此错误“未定义不是对象”?
- django - VueJS 应用程序无法在移动浏览器上访问受保护的 API 端点
- scala - 如何根据列表的第一个元素对对象列表的列表进行分组
- c++ - 有没有更快的方法从 IMFSample 读取样本?
- amazon-web-services - 是否可以删除传输到队列始终播放的音频提示?- 联系流程 - 亚马逊连接
- amazon-web-services - aws 服务设计和微服务
- python - 基于文本匹配在 Pandas DataFrame 上加入并运行计算
- jquery - Jquery SetInterval 循环结束再次循环重启