C语言 输出50-100间的所有素数,其中判断一个数是不是为素数用函数完成。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言 输出50-100间的所有素数,其中判断一个数是不是为素数用函数完成。相关的知识,希望对你有一定的参考价值。

#include <stdio.h> #include <math.h> int ss(int m) int i,t1=0,q; q=sqrt(m); for (i=2;i<=9;i++) if (m%i==0) break; if (i>=q+1) t1=1; return(t1); void main() int i,t=0; for (i=50;i<=100;i++) t=ss(i); if (t==1) printf("%4d",i); 后面带上每一句的解释··谢谢了·

#include <stdio.h> // 头文件用于输入输出 #include <math.h> // 头文件用于数学函数sqrt int ss(int m) // 判断m是否为素数的函数 int i,t1=0,q; // 定义变量,t1表示素数或非素数 q=sqrt(m); // 对M开平方根q,只需要检查到q就可以了,后面的不需要 for (i=2;i<=9;i++) // 这里你的9错了,应该是q if (m%i==0) // 如果i可以整除m,那么m不是素数 break; // break跳出 if (i>=q+1) // 只有当2..q中没有数可以整除m,才会执行t1=1,即m为素数 t1=1; return(t1); // 返回是否为素数的标记t1 void main() int i,t=0; // 定义循环变量和临时变量 for (i=50;i<=100;i++) // FOR循环从50到100,逐个检查 t=ss(i); // 调用ss函数,检查i是否为素数,保存在t中 if (t==1) // 当i是素数的时候, printf("%4d",i); // 打印出i 参考技术A #include <stdio.h> #include <math.h> int ss(int m) int i,t1=0,q; q=sqrt(m); //赋值q等于m的平方根 /*注意下面这个循环这里!里面那个i<=9应该是 i<=q``` `这个循环是用来判断q是不是素 数中的一个环节,如果q是素数··那么这个循环会执行到i = q才停止··那时再执行i++,也就是说··如果q是素数,那么经过这个循环i = q+1*/ for (i=2;i<=q;i++) if (m%i==0) break; /*这里就是利用上面的循环后的 i的值···如果m是素数,那么在此i = q+1,所以这个if就是“如果m是素数,那么t1就赋值为1.”*/ if (i>=q+1) t1=1; //返回t1的值 return(t1); 主函数没什么好说的· void main() int i,t=0; for (i=50;i<=100;i++) t=ss(i); //调用ss函数 if (t==1) printf("%4d",i);//输出i的值 本回答被提问者采纳 参考技术B #include
//
头文件用于输入输出
#include
//
头文件用于数学函数sqrt
int
ss(int
m)
//
判断m是否为素数的函数

int
i,t1=0,q;
//
定义变量,t1表示素数或非素数
q=sqrt(m);
//
对M开平方根q,只需要检查到q就可以了,后面的不需要
for
(i=2;i<=9;i++)
//
这里你的9错了,应该是q
if
(m%i==0)
//
如果i可以整除m,那么m不是素数
break;
//
break跳出
if
(i>=q+1)
//
只有当2..q中没有数可以整除m,才会执行t1=1,即m为素数
t1=1;
return(t1);
//
返回是否为素数的标记t1

void
main()

int
i,t=0;
//
定义循环变量和临时变量
for
(i=50;i<=100;i++)
//
FOR循环从50到100,逐个检查

t=ss(i);
//
调用ss函数,检查i是否为素数,保存在t中
if
(t==1)
//
当i是素数的时候,
printf("%4d",i);
//
打印出i

1.求100-300间的所有素数,按每行10个数输出,并求出输出怎么做?

参考技术A Java实现:
public class PrimeNumbers
public static void main(String[] args)
// 枚举100-300之间的数字
for (int num = 100; num <= 300; num++)
// 判断是否是素数
boolean isPrime = true;
for (int i = 2; i < num; i++)
if (num % i == 0)
isPrime = false;
break;


if (isPrime)
System.out.print(num + " ");
// 每输出10个数字换行
if (num % 10 == 0)
System.out.println();





PHP实现:

<?php
// 枚举100-300之间的数字
for ($num = 100; $num <= 300; $num++)
// 判断是否是素数
$isPrime = true;
for ($i = 2; $i < $num; $i++)
if ($num % $i == 0)
$isPrime = false;
break;


if ($isPrime)
echo $num . " ";
// 每输出10个数字换行
if ($num % 10 == 0)
echo "<br>";



?>
C语言:

#include <stdio.h>
int main()

// 枚举100-300之间的数字
for (int num = 100; num <= 300; num++)
// 判断是否是素数
int isPrime = 1;
for (int i = 2; i < num; i++)
if (num % i == 0)
isPrime = 0;
break;


if (isPrime)
printf("%d ", num);
// 每输出10个数字换行
if (num % 10 == 0)
printf("\n");



return 0;

Python实现:
# 枚举100-300之间的数字
for num in range(100, 301):
# 判断是否是素数
for i in range(2, num):
if num % i == 0:
break
else:
print(num, end=" ")
# 每输出10个数字换行
if num % 10 == 0:
print()
参考技术B Java实现:
public class PrimeNumbers
public static void main(String[] args)
// 枚举100-300之间的数字

以上是关于C语言 输出50-100间的所有素数,其中判断一个数是不是为素数用函数完成。的主要内容,如果未能解决你的问题,请参考以下文章

用C++求50~100内的素数,具体问题如下

50~100之间的素数,判断是不是为素数用函数完成

C语言试题107之判断 101至200 之间有多少个素数,并输出所有素数。

C语言编程:输出2到100之间的所有素数,每行输出10个

用c语言判断两个整数集间的集合关系

C语言判断素数