C语言设计一个函数,对给定的数判定其是否为素数,主函数调用子函数显示901到991 之间的所有素数。已有部分代码,请补充完成。 #include <math.h> int pdss(int n) { int i for (i=2;i<sqrt (double (n)) ; i++) if (n%i==0) return 0; return 1; } int _tmain(int argc,_TCHAR* argv[])
时间: 2024-03-07 09:53:23 浏览: 17
{
int i;
for(i=901;i<=991;i++)
{
if(pdss(i)==1)
printf("%d\n",i);
}
return 0;
}
请注意,这里的函数名_tmain是Windows系统中用于控制台程序的主函数的名称,如果您在其他操作系统上编写代码,可以将其替换为标准的main函数。同时,在判断素数时,只需要遍历2到sqrt(n)的范围即可,这样可以有效地减少循环次数,提高判断效率。
相关问题
用主函数调用子函数的形式,判断1-100之间素数。判断一个数是不是素数用子函数实现。
题目中要求用主函数调用子函数的形式,判断1-100之间素数。判断一个数是不是素数可以用子函数来实现。
下面是代码:
```python
def prime(n):
"""
判断一个数是不是素数
"""
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return False
return True
def main():
"""
主函数,判断1-100之间素数
"""
for i in range(1, 101):
if prime(i):
print(i, end=' ')
print()
if __name__ == '__main__':
main()
```
执行结果为:
```
1 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97
```
最后,根据题目要求,在子函数返回False的地方加上一个print语句,输出该数不是素数。
用c语言写一串主函数输入一个大于2的整数,定义子函数判定其是否为素数,在主函数中输出判定结果。
好的,下面是代码:
```c
#include <stdio.h>
int isPrime(int n);
int main() {
int num;
printf("请输入一个大于2的整数:");
scanf("%d", &num);
if (isPrime(num)) {
printf("%d是素数。\n", num);
} else {
printf("%d不是素数。\n", num);
}
return 0;
}
int isPrime(int n) {
int i;
if (n <= 2) {
return 0;
}
for (i = 2; i < n; i++) {
if (n % i == 0) {
return 0;
}
}
return 1;
}
```
主函数中先输入一个大于2的整数,然后调用子函数isPrime判断是否为素数。isPrime函数中通过遍历2到n-1的所有数字,如果有一个能整除n,就说明n不是素数。如果遍历完了所有数字都没有能整除n的,就说明n是素数。最后在主函数中输出判断结果。