c语言判断素数,如果n是素数,则输出n
时间: 2024-05-15 21:18:26 浏览: 11
以下是一种C语言的判断素数的方法:
```c
#include <stdio.h>
int main() {
int n, i, is_prime = 1;
printf("请输入一个整数:");
scanf("%d", &n);
for (i = 2; i <= n / 2; i++) {
if (n % i == 0) {
is_prime = 0;
break;
}
}
if (is_prime && n > 1) {
printf("%d 是素数", n);
} else {
printf("%d 不是素数", n);
}
return 0;
}
```
首先从用户输入获取一个整数n,然后从2开始到n/2,依次判断这个整数n是否可以被2至n/2之间的任何一个整数整除。如果n能被整除,则不是素数,将is_prime设置为0,并跳出循环。如果循环结束后is_prime仍为1,则n为素数。注意,这里需要判断n是否大于1,因为1不是素数。
相关问题
c语言判断素数并输出
以下是两种C语言判断素数并输出的方法:
代码1:
```c
#include <stdio.h>
void main() {
int i,n;
printf("请输入一个正整数:");
scanf("%d",&n);
for(i=2;i<=n-1;i++) {
if(n%i==0) break;
}
if(i<n) printf("%d不是素数\n",n);
else printf("%d是素数\n",n);
}
```
代码2:
```c
#include<stdio.h>
int main() {
int n, i, condition = 0;
printf("请输入一个正整数\n");
scanf("%d", &n);
if (n == 1) {
printf("不是素数\n");
return 0;
}
for (i = 2; i<=(n / 2) ; i++) {
if (n % i == 0) {
condition = 1;
break;
}
}
if (condition == 0)
printf("是素数\n");
else
printf("不是素数\n");
return 0;
}
```
c语言判断素数并输出个数
这段C语言代码使用试除法判断1到200之间的数是否为素数,并输出素数的个数。其中,使用了一个flag变量来判断是否为素数,如果是素数则flag为1,否则为0。同时,使用了一个count变量来记录素数的个数。
以下是回答:
要判断一个数是否为素数,可以使用试除法。试除法是指用2到该数的平方根之间的所有整数去试除该数,如果都不能整除,则该数为素数。
以下是判断一个数是否为素数的C语言函数:
```c
int isPrime(int n) {
if (n <= 1) {
return 0;
}
int i;
for (i = 2; i * i <= n; i++) {
if (n % i == 0) {
return 0;
}
}
return 1;
}
```
该函数接受一个整数n作为参数,返回值为1表示n为素数,返回值为0表示n不是素数。
以下是修改后的C语言代码,判断1到200之间的数是否为素数,并输出素数的个数:
```c
#include <stdio.h>
int isPrime(int n) {
if (n <= 1) {
return 0;
}
int i;
for (i = 2; i * i <= n; i++) {
if (n % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int i;
int count = 0;
for (i = 1; i <= 200; i++) {
if (isPrime(i)) {
printf("%d ", i);
count++;
}
}
printf("\n%d", count);
return 0;
}
```