编写一个c语言程序解决输入2个整数n和m(1<= n <= m <=200),输出n至m之间的所有素数。
时间: 2023-03-10 20:43:30 浏览: 241
#include <stdio.h>
int main()
{
int n, m, i, j, flag;
printf("请输入两个正整数n和m(1<= n <= m <=200):");
scanf("%d %d",&n,&m);
printf("%d 和 %d 之间的素数有:\n", n, m);
for(i=n; i<=m; i++)
{
flag = 0;
// 判断i是不是素数
for(j=2; j<i; j++)
{
if(i%j == 0)
{
flag = 1;
break;
}
}
if(flag == 0)
printf("%d ", i);
}
return 0;
}
相关问题
用c语言编写程序:输入2个正整数 m 和 n(1<=m, n<=500),输出 m 和 n 之间的所有素数,每行输出6个。
好的,以下是用C语言编写的程序,可以实现输入2个正整数 m 和 n(1<=m, n<=500),输出 m 和 n 之间的所有素数,每行输出6个。
```c
#include <stdio.h>
#include <stdbool.h>
bool isPrime(int num) {
if (num < 2) {
return false;
}
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) {
return false;
}
}
return true;
}
int main() {
int m, n;
printf("请输入两个正整数m和n(1<=m, n<=500):\n");
scanf("%d %d", &m, &n);
int count = 0;
for (int i = m; i <= n; i++) {
if (isPrime(i)) {
printf("%d\t", i);
count++;
if (count % 6 == 0) {
printf("\n");
}
}
}
return 0;
}
```
程序中用到了一个判断素数的函数`isPrime`,该函数接受一个整数参数`num`,返回一个bool类型的值,表示该整数是否为素数。程序中的主要思路是:遍历m到n之间的所有整数,对于每个整数都调用`isPrime`函数判断是否为素数,如果是,则输出该数并计数,每输出6个数就换行。
c语言输入整型数据m和n(100<=m<=n<=200),要求输出m~n之间的所有素数
下面是一个使用C语言编写的程序,可以实现该功能:
```c
#include <stdio.h>
// 判断一个数是否为素数
int is_prime(int n) {
if (n <= 1) {
return 0;
}
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int m, n;
printf("请输入两个整数m和n(100<=m<=n<=200):\n");
scanf("%d%d", &m, &n);
printf("m~n之间的素数有:\n");
for (int i = m; i <= n; i++) {
if (is_prime(i)) {
printf("%d ", i);
}
}
printf("\n");
return 0;
}
```
程序运行时,先让用户输入两个整数m和n,然后通过循环判断m~n之间的每个数是否为素数,如果是,则输出该数。is_prime函数用于判断一个数是否为素数,具体实现方法是:从2开始,依次判断该数能否被2到sqrt(n)之间的任何一个数整除,如果能,则说明该数不是素数,返回0;否则,说明该数是素数,返回1。
阅读全文