100以内的质数c语言
㈠ 用c语言编写在自然数中输出100以内的素数
#include<stdio.h>
//输出100之内的所有素数
int main()
{
int i;
int j;
int flag = 1;
for(i = 2;i <= 100;i++)
{
for(j = 2;j <= i / 2;j++)
{
if(i % j ==0)
{
flag = 0;
break;
}
}
if(flag == 1)
{
printf("%d ",i);
}
flag = 1;
}
return 0;
}
(1)100以内的质数c语言扩展阅读
#include <stdio.h>
int main()
{
int a;
for (int i = 2; i < 100; i++)
{
int a = 0;
/* code */
for (int j = 2; j < i; j++)
{
/* code */
if (i % j == 0)
{
/* code */
a++;
}
}
if (a == 0)
{
/* code */
printf("%d is sushu ", i);
}
else
{
/* code */
printf("%d is not sushu ", i);
}
}
return 0;
}
㈡ 用C语言求100以内的素数
单独定义一个判断是否为素数的函数,是则返回1,否则返回0。再用2或遍历3~100的所有奇数依次调用这个函数,输出返回1对应的值。举例如下:
//#include"stdafx.h"//Ifthevc++6.0,withthisline.
#include"stdio.h"
intprime(intn){
inti;
if(n>2&&!(n&1)||n<2)
return0;
for(i=3;i*i<=n;i+=2)
if(!(n%i))
return0;
return1;
}
intmain(void){
inti;
for(i=2;i<100;i==2?i++:i+=2)
if(prime(i))
printf("%3d",i);
printf(" ");
return0;
}
㈢ 输出100以内的质数,用c语言编写
#include <stdio.h>
int main(int argc, char **argv)
{
int x;
for (x=1;x<100;x++){
int i;
int isprime=1;//表示x是素数。
for(i=2;i<x;i++){
if (x%i==0){
isprime=0;
break;
}
}
if (isprime==1){
printf("%d",x);
}
}
return 0;
}
C语言编程计算注意事项:
1、编程时注意符号大小写。
2、main函数要有返回值
3、C语言中定义数组,要定义出大小,数组的大小只能是常量不能是变量。
4、%md ; %0md ;%.mf;(以m位进行右对齐输出,不足m位空格补上;以m位进行右对齐输出。不足m位用0补上;保留m位小数)
㈣ c语言求100以内的素数
#include<stdio.h>
//输出100之内的所有素数
int main()
{
int i;
int j;
int flag = 1;
for(i = 2;i <= 100;i++)
{
for(j = 2;j <= i / 2;j++)
{
if(i % j ==0)
{
flag = 0;
break;
}
}
if(flag == 1)
{
printf("%d ",i);
}
flag = 1;
}
return 0;
}
C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言;
质数(prime number)又称素数,有无限个。一个大于1的自然数,除了1和它本身外,不能被其他自然数整除。
㈤ C语言编程、求100以内所有质素数
楼主大括号都未能匹配,{有两个,}有三个,编译就通过不了的。
刚写了份代码,已调试通过,供楼主参考:
#include
<stdio.h>
main(void)
{
int
i,t;
for(i=1;
i<=100;
i++)
{
if(i
==
1)
continue;
if(i
==
2)
{
printf("%d,",i);
continue;
}
for(t=2;
t
<=
i/2;
t++)
{
if((i%t)
==
0)
break;
}
if(t
>
i/2)
{
printf("%d,",i);
}
}
printf("\n");
return
0;
}
输出的结果为: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,
再说说楼主代码中一些错误:
1.之前提到编译上就不能通过。{和}个数未能匹配。
2.
if(100%i!=0)
break;
该语句的含义是100除以i的余数不等于0则跳出循环,当为1时,就已经跳出循环了。而且这对于质素的判断是毫无意义的,可以删除。
3.
for(t=1;t<=i;t++)
质数的判断的话,t应该是从2开始计数的,否则i%1肯定是等于0的。应修改为for(t=2;
t<=i;
t++)。此外,这里可以参考我的代码,t<=i/2即可,用以提高提升效率。
希望对楼主有所帮助。谢谢。
㈥ c语言 求100以内的质数有多少个
k = sqrt(x);
for (i = 2; i <= k;i++) {
if( x % i == 0) break;
}
if (i <= k) printf{"不是质数"},否则反之,中心思想理解了就好
㈦ C语言求100以内素数的问题
#include<stdio.h>
int main()
{
int i=0;
int count=0;
for(i=0;i<=100;i++)
{
int j=0;
for(j=2;j<=i;j++)
{
if(i%j==0)
{
break;
}
}
if(i==j)
{
count++;
printf("%d ",i);
}
}
printf(" count=%d ",count);
return 0;
}
解题思路:
素数,就是除了1和他本身,不能被其他数整除的数字。答案就是用100到200之间的每个数字,除以2到其本身前面的那一个数字,如果此过程中出现整除的现象,则该数不是素数。如果没有整除的现象,则该数为素数输出。
(7)100以内的质数c语言扩展阅读:
质数又称素数。一个大于1的自然数,除了1和它自身外,不能整除其他自然数的数叫做质数;否则称为合数。
质数的个数是无穷的。欧几里得的《几何原本》中有一个经典的证明。它使用了证明常用的方法:反证法。具体证明如下:假设质数只有有限的n个,从小到大依次排列为p1,p2,……,pn,设N=p1×p2×……×pn,那么,要大于p1,p2,……,pn,所以它不在那些假设的素数集合中。