C语言程序 输出1000以内的所有质数,每5个换一行
5个回答
展开全部
可以参考下面的代码:
#include <stdio.h>
#include <math.h>
int is_prime(int n)
{
int i;
for(i = 2; i <= sqrt(n); i ++)
if(n%i == 0) return 0;
return 1;
}
int main()
{
int i,n=0;
for(i=2; i < 1000; i ++)
{
if(is_prime(i))
{
printf("%d ",i);
n++;
if(n%5==0)printf("\n");
}
}
}
扩展资料:
C语言参考函数:
double pow(double x,double y) 返回x^y的值
double pow10(int p) 返回10^p的值
double sqrt(double x) 返回+√x的值
C语言isupper()函数:判断一个字符是否是大写字母
C语言isspace()函数:判断一个字符是否是空白符
C语言isprint()函数:判断一个字符是否是可打印字符
参考资料来源:百度百科-C语言函数
展开全部
1 根据质数定义,书写判断质数的函数。
2 对2到1000遍历,如果是质数,则输出。
3 记录输出的质数个数,每五个换行一次。
代码:
#include <stdio.h>
#include <math.h>
int is_prime(int n)
{
int i;
for(i = 2; i <= sqrt(n); i ++)
if(n%i == 0) return 0;
return 1;
}
int main()
{
int i,n=0;
for(i=2; i < 1000; i ++)
{
if(is_prime(i))
{
printf("%d ",i);
n++;
if(n%5==0)printf("\n");
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
int isprime(int n)
{
if (n <= 1) return 0;
if (n == 2) return 1;
for (int i = 2; i <= n / 2; i++)
{
if (n % i == 0) return 0;
}
return 1;
}
int main()
{
int count = 0;
for (int i = 2; i <= 1000; i++)
{
if (isprime(i))
{
printf("%3d ", i);
count++;
}
if (count == 5) // 每五个换行
{
printf("\n");
count = 0;
}
}
return 0;
}
int isprime(int n)
{
if (n <= 1) return 0;
if (n == 2) return 1;
for (int i = 2; i <= n / 2; i++)
{
if (n % i == 0) return 0;
}
return 1;
}
int main()
{
int count = 0;
for (int i = 2; i <= 1000; i++)
{
if (isprime(i))
{
printf("%3d ", i);
count++;
}
if (count == 5) // 每五个换行
{
printf("\n");
count = 0;
}
}
return 0;
}
追问
如果输出素数呢?该怎么写?
追答
素数就是质数啊,这输出的就是1000以内的素数啊
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
int main(void)
{
int a,b,flag=0,sum=0;
printf("1~1000间的素数:\n");
for(a=2;a<=1000;a++)
{
b=2;
while (b<a)
{
if(0==a%b)
{
flag=1;
break;
}
b++;
}
if (flag)
{
flag=0;
continue;
}
printf("%d\t",a);
sum++;
if (sum==5)
{
sum=0;
printf("\n");
}
}
printf("\n");
return 0;
}
int main(void)
{
int a,b,flag=0,sum=0;
printf("1~1000间的素数:\n");
for(a=2;a<=1000;a++)
{
b=2;
while (b<a)
{
if(0==a%b)
{
flag=1;
break;
}
b++;
}
if (flag)
{
flag=0;
continue;
}
printf("%d\t",a);
sum++;
if (sum==5)
{
sum=0;
printf("\n");
}
}
printf("\n");
return 0;
}
追问
如果输出素数呢?该怎么写?
追答
质数又称为素数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
骚年 这个是课后习题吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询