编程求素数:求2~100之间所有的素数,要求每行显示5个素数。(所谓素数就是除了被1和它本身整除外没有其它约数。)C语言
时间: 2023-06-08 22:08:43 浏览: 52
代码如下:
#include <stdio.h>
int main() {
int i, j, count;
// 对于每个数字i,判断它是否为素数
for (i = 2, count = 0; i <= 100; i++) {
// 判断i是否为素数
for (j = 2; j <= i / 2; j++) {
if (i % j == 0) { // 不是素数
break;
}
}
if (j > i / 2) { // 是素数
printf("%d ", i);
count++;
if (count % 5 == 0) { // 每行显示5个素数
printf("\n");
}
}
}
return 0;
}
相关问题
c语言编写一段程序,求出3和 50 之间的所有素数 (质数),要求每行输出 5个
### 回答1:
以下是使用 C 语言编写的程序,可用于查找 3 和 50 之间的所有质数,并每行输出 5 个:
```c
#include <stdio.h>
int main()
{
int i, j;
int count = 0; // 记录每行输出的数量
// 找出 3 到 50 之间的所有质数
for (i = 3; i <= 50; i++) {
int is_prime = 1; // 标记当前数是否为质数
// 判断当前数是否为质数
for (j = 2; j < i; j++) {
if (i % j == 0) {
is_prime = 0;
break;
}
}
// 如果当前数为质数,则输出
if (is_prime) {
printf("%d ", i);
count++;
// 如果已经输出了 5 个数,则换行
if (count == 5) {
printf("\n");
count = 0;
}
}
}
return 0;
}
```
输出结果如下:
```
3 5 7 11 13
17 19 23 29 31
37 41 43 47
```
### 回答2:
程序如下:
```c
#include <stdio.h>
int isPrime(int num) {
if(num < 2) return 0; // 0和1不是素数
for(int i = 2; i <= num / 2; i++) {
if(num % i == 0) {
return 0; // 可以被某个数整除,不是素数
}
}
return 1; // 没有能整除的数,是素数
}
int main() {
int count = 0; // 记录已输出的素数个数
for(int i = 3; i <= 50; i++) {
if(isPrime(i)) {
count++;
printf("%d ", i);
if(count % 5 == 0) {
printf("\n"); // 每5个素数换行输出
}
}
}
return 0;
}
```
该程序使用函数 isPrime 判断一个数是否为素数。判断方法为在 2 到这个数的一半之间循环遍历,如果有能整除的数,则不是素数;如果没有找到能整除的数,则是素数。主函数从 3 到 50 的范围内遍历所有数,将素数按每行5个的格式输出。
### 回答3:
以下是用 C 语言编写的求出 3 和 50 之间的所有素数的程序,每行输出 5 个素数:
```c
#include <stdio.h>
int isPrime(int num) {
if (num <= 1) {
return 0;
}
for (int i = 2; i <= num / 2; i++) {
if (num % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int count = 0;
for (int i = 3; i <= 50; i++) {
if (isPrime(i)) {
printf("%d ", i);
count++;
if (count == 5) {
printf("\n");
count = 0;
}
}
}
return 0;
}
```
该程序首先定义了一个名为 `isPrime` 的函数,用于判断一个数是否为素数。该函数接受一个整数参数 `num`,如果 `num` 小于等于 1,则返回 0,表示不是素数。如果 `num` 大于 1,则通过循环遍历从 2 到 `num/2` 的所有数,如果 `num` 能被其中任何一个数整除,则返回 0,表示不是素数。如果循环结束后没有找到任何可以整除 `num` 的数,则返回 1,表示是素数。
在 `main` 函数中,使用一个循环遍历从 3 到 50 的所有数,通过调用 `isPrime` 函数判断该数是否为素数。如果是素数,则输出该数,并且将计数器 `count` 加 1。当 `count` 达到 5 时,输出一个换行符并将 `count` 重置为 0,以实现每行输出 5 个素数的要求。最后返回 0 表示程序运行结束。
使用JavaScript在页面上编程输出100~ 1 000的所有素数,并要求每行显示6个素数
### 回答1:
首先,我们需要创建一个函数来判断一个数是否为素数。我们可以使用以下代码来实现这个函数:
```
function isPrime(num) {
if (num < 2) {
return false;
}
for (let i = 2; i <= Math.sqrt(num); i++) {
if (num % i === 0) {
return false;
}
}
return true;
}
```
然后,我们可以使用以下代码来输出100~1000之间的所有素数,并要求每行显示6个素数:
```
for (let i = 100; i <= 1000; i++) {
if (isPrime(i)) {
document.write(i + " ");
if (i % 6 === 0) {
document.write("<br>");
}
}
}
```
在这段代码中,我们首先使用一个循环遍历100~1000之间的所有数字。然后,我们使用我们之前定义的isPrime函数来判断该数字是否为素数。如果是,我们使用document.write方法将其写入页面。最后,我们使用一个条件语句来检查当前数字是否为6的倍数。如果是,我们使用document.write方法写入一个换行符,以使素数在新的一行中显示。
希望这对你有帮助!
### 回答2:
使用JavaScript编写一个函数来判断一个数是否为素数,然后使用循环输出100到1000之间的所有素数,并确保每行只显示6个素数。
以下是实现这个功能的代码:
```javascript
// 判断一个数是否为素数的函数
function isPrime(num) {
// 排除小于2的数和偶数
if (num < 2 || num % 2 === 0) {
return false;
}
// 判断是否有除了1和自身以外的因子
for (let i = 3; i <= Math.sqrt(num); i += 2) {
if (num % i === 0) {
return false;
}
}
return true;
}
// 输出100到1000之间的所有素数
let count = 0; // 计数器,每行只显示6个素数
let output = ""; // 存储要输出的素数
for (let num = 100; num <= 1000; num++) {
if (isPrime(num)) {
output += num + " ";
count++;
if (count === 6) { // 每行只显示6个素数
console.log(output);
output = "";
count = 0;
}
}
}
// 如果最后一行的素数个数不到6个,单独输出
if (output !== "") {
console.log(output);
}
```
以上代码首先定义了一个`isPrime`函数,用于判断一个数是否为素数。然后使用循环从100到1000遍历每个数,对每个数调用`isPrime`函数判断是否为素数。如果是素数,则将其添加到`output`字符串中,并将计数器`count`加1。当`count`达到6时,即一行已经显示了6个素数,将`output`打印出来,并清空`output`和`count`。最后,如果最后一行的素数个数不到6个,单独输出。
### 回答3:
使用JavaScript编写一个函数来判断一个数是否为素数,然后在页面上输出100~1,000的素数,每行显示6个素数。
以下是代码示例:
```
<script>
function isPrime(num) {
if (num <= 1) {
return false;
}
for (let i = 2; i <= Math.sqrt(num); i++) {
if (num % i === 0) {
return false;
}
}
return true;
}
function printPrimes() {
let count = 0;
let output = '';
for (let i = 100; i <= 1000; i++) {
if (isPrime(i)) {
output += i + ' ';
count++;
if (count % 6 === 0) {
output += '<br>'; // 每6个素数换行
}
}
}
document.getElementById('output').innerHTML = output;
}
printPrimes();
</script>
```
这段代码定义了一个`isPrime`函数来判断一个数是否为素数。它使用了一个循环来遍历2到该数的平方根之间的所有数,如果存在某个数能够整除该数,则该数不是素数,返回false;如果没有找到能够整除的数,则该数是素数,返回true。
然后,定义了一个`printPrimes`函数来输出100到1000之间的素数。它通过遍历100到1000之间的每个数,使用`isPrime`函数来判断该数是否为素数。如果是素数,将该数添加到`output`字符串中,同时计数器`count`加1。当`count`能够被6整除时,加入一个`<br>`标签来换行。
最后,使用`getElementById`方法获取具有'id'为`output`的元素,并将`output`字符串的值赋给该元素的`innerHTML`属性,以在页面上显示输出。
注意:这段代码要在网页的`<head>`或`<body>`标签中使用`<script>`标签包裹。在页面中添加一个具有'id'为`output`的元素,以便显示输出结果。