利用循环嵌套找出300以内的素数
时间: 2023-05-21 15:04:15 浏览: 58
下面是相关代码:
```
#include <stdio.h>
int main()
{
int i, j;
for (i = 2; i <= 300; ++i)
{
for (j = 2; j <= i; ++j)
{
if (i % j == 0)
{
break;
}
}
if (j == i)
{
printf("%d\n", i);
}
}
return 0;
}
```
其中,外层循环变量 i 遍历 2 到 300,内层循环变量 j 遍历 2 到 i,判断 i 是否能被 j 整除,如果能,则表明 i 不是素数,跳出循环,否则,内层循环结束时,j 就等于 i,表明 i 是素数,输出 i 即可。
相关问题
java找出100以内的素数,并计算出程序所耗费的时间
为了找出100以内的素数,我们可以使用以下的Java程序:
```java
public class PrimeNumbers {
public static void main(String[] args) {
int upperLimit = 100;
long startTime = System.currentTimeMillis();
System.out.println("100以内的素数有:");
for (int i = 2; i <= upperLimit; i++) {
boolean isPrime = true;
for (int j = 2; j < i; j++) {
if (i % j == 0) {
isPrime = false;
break;
}
}
if (isPrime) {
System.out.print(i + " ");
}
}
long endTime = System.currentTimeMillis();
long duration = endTime - startTime;
System.out.println("\n程序耗时:" + duration + "毫秒");
}
}
```
这段程序会对100以内的每个数进行判断,判断其是否为素数。素数是指除了1和自身,没有其他因子的整数。通过两个嵌套的for循环,分别遍历从2到100的每个数,并检查该数是否可以被2到自身-1的任何一个数整除。如果不能被整除,则该数为素数。
程序运行结束后,会输出100以内的素数,并计算出程序所耗费的时间,以毫秒为单位进行显示。
请注意,在较大的范围内寻找素数会耗费较长的时间。
如何用c语言编写程序找出100以内的所有素数,并显示
以下是一个用C语言编写的程序,可以找出100以内的所有素数并显示:
```c
#include <stdio.h>
int main() {
int i, j, is_prime;
for (i = 2; i <= 100; i++) {
is_prime = 1;
for (j = 2; j < i; j++) {
if (i % j == 0) {
is_prime = 0;
break;
}
}
if (is_prime) {
printf("%d ", i);
}
}
return 0;
}
```
这个程序使用两个循环嵌套来遍历100以内的所有数,并用一个标志变量 `is_prime` 来判断是否为素数。外层循环从2开始遍历到100,内层循环从2开始遍历到当前数的前一个数,如果当前数能够被内层循环中的任意一个数整除,则说明不是素数,将 `is_prime` 设为0,跳出内层循环。如果内层循环全部遍历完毕, `is_prime` 仍为1,则说明当前数是素数,打印出来。最后程序返回0,结束运行。