#include<stdio.h>
void main()
{ int t,i;
for(i=2;i<=100;i++)
t=1;
for(t=2;t<i;t++)
if(i%t==0)
t=0;
if(t==0)printf("%d",i);
}
各位高手能不能看我这个程序哪里错了?
按一楼和2楼的改不对啊
#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("\ncount=%d\n",count);
return 0;
}
解题思路:
素数,就是除了1和他本身,不能被其他数整除的数字。答案就是用100到200之间的每个数字,除以2到其本身前面的那一个数字,如果此过程中出现整除的现象,则该数不是素数。如果没有整除的现象,则该数为素数输出。
扩展资料:
质数又称素数。一个大于1的自然数,除了1和它自身外,不能整除其他自然数的数叫做质数;否则称为合数。
质数的个数是无穷的。欧几里得的《几何原本》中有一个经典的证明。它使用了证明常用的方法:反证法。具体证明如下:假设质数只有有限的n个,从小到大依次排列为p1,p2,……,pn,设N=p1×p2×……×pn,那么, 是素数或者不是素数。
如果 为素数,则 要大于p1,p2,……,pn,所以它不在那些假设的素数集合中。
参考资料:百科-素数质数
C语言求100以内的素数编程的思路和方法如下:
1.首先需要定义两个整型的游标变量,用于后续的循环操作。这里定义两个变量为i,j。
2.接着适用for循环来分别计算100以内的数。其中游标适用i变量。(因为第一个素数是3,所以循环变量游标从数字3开始)
3.接着在第一个for循环的开头添加布尔变量tag,这个用于后续判断一个数是否为素数。当为素数时,将tag置为false。
4.然后使用第二个for循环,在这个循环中,使用变量j作为循环游标,通过尝试2到比需要比较的数之前的所有数是否为i的因子。
5.在第二哥循环中,当检测到i不为素数时,将tag置为false。
6.然后判断tag是否为true,如果是则说明该数为素数,此时输出该数。
7.编写代码完成后,运行程序即可成功输出100以内的所有素数。
本回答被网友采纳程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。
程序代码:
#include <stdio.h>
#include "math.h"
main()
{int m,i,,k,h=0,leap=1;
printf("\n");
for(m=0;m<=100;m++)
{k=sqrt(m+1);
for(i=2;i<=k;i++)
if(m%i==0)
{leap=0;break;}
if(leap){printf("%-4d",m);h++;
if(h%10==0)
printf("\n");}}}
资料拓展:
质数又称素数。一个大于1的自然数,除了1和它自身外,不能整除其他自然数的数叫做质数;否则称为合数。
质数的个数是无穷的。欧几里得的《几何原本》中有一个经典的证明。它使用了证明常用的方法:反证法。具体证明如下:假设质数只有有限的n个,从小到大依次排列为p1,p2,……,pn,设N=p1×p2×……×pn,那么, 是素数或者不是素数。如果 为素数,则 要大于p1,p2,……,pn,所以它不在那些假设的素数集合中。
参考资料:素数(质数)——百度百科
本回答被网友采纳#include <stdio.h>
#include "math.h"
main( )
{int m,i,,k,h=0,leap=1;
printf("\n");
for(m=0;m<=100;m++)
{k=sqrt(m+1);
for(i=2;i<=k;i++)
if(m%i==0)
{
leap=0;break;
}
if(leap)
{
printf("%-4d",m);
h++;
if(h%10==0)
printf("\n");
}
}
}
扩展资料:
其他方法得到100以内的素数:
#include<stdio.h>
int main( )
{
int i = 0;
int j = 0;
int t = 1;
for(i = 2;i <= 100;i++)
{
for(j = 2;j <= i / 2;j++)
{
if(i%j == 0)
{
t= 0;
break;
}
}
if(t == 1)
{
printf("%d\n",i);
}
t = 1;
}
return 0;
}
本回答被网友采纳前几个高赞回答简直瞎搞,复杂又忽略掉了数字2.
我这个程序可以求出100以内的素数并将其按照10个每行排列
其中num的计数算法题主可以学一下,经常用到
看不懂的地方我帮大家标注出来
#include<stdio.h> //头文件
void main()
{
int i,j,k,num=0;
for(j=2;j<=100;j++) //简单的循环嵌套,j表示100以内所有数字
{
k=1;
for(i=j-1;i>1;i--)
{
if(j%i==0)
{
k=0; //当j为素数时,k赋值为0
}
}
if(k==1) //判断k是否改变为0,即可判断j是否为素数
{
printf("%5d",j);
num++;
}
if(num==10) //一行输出10个素数
{
printf("\n");
num=0;
}
}
}
上图
C语言求100以内素数的问题
C语言求100以内的素数编程的思路和方法如下:1.首先需要定义两个整型的游标变量,用于后续的循环操作。这里定义两个变量为i,j。2.接着适用for循环来分别计算100以内的数。其中游标适用i变量。(因为第一个素数是3,所以循环变量游标从数字3开始)3.接着在第一个for循环的开头添加布尔变量tag,这个用于...
用c 求100以内的素数
在C语言中,求取100以内的素数是一个常见的编程题目。下面,我将为您详细介绍如何实现这个任务。首先,我们需要了解素数的定义。素数是一个只有1和它本身两个正除数的自然数。例如,2、3、5、7、11、13等都是素数。实现过程如下:1. 使用一个循环结构(for循环)从2开始遍历到100(包括100),遍历...
C语言,列出100以内的素数
列出100以内的素数 代码如下:include<stdio.h> intmain(void){ inti,j,k;printf("%d\\n",2);2肯定是素数[em02]for(i=1;i<=100;i+=2){ for(j=2;j
C语言求100以内素数
在C语言中,要找出100以内的素数,我们可以稍微调整代码结构。首先,我们需要明确,这里的素数是只有1和本身两个正因数的自然数。下面是优化过的代码片段:c include void main() { int i, j, is_prime; \/\/ 用is_prime替换t来表示当前数是否为素数 for (i = 2; i <= 100; i++) { \/\/ ...
用C语言输出100之间的所有质数
1、首先新建一个空白的c语言文件,引入头文件,头文件中包括math库,稍后会用到,建立主函数:2、主函数上面新建一个判断素数的函数isPrime,判断依据是小于从2到算数平方根的数即是素数。然后在主函数中遍历2到100的数,调用isPrime判断满足素数条件就输出:3、写完代码最后打开编译后的调试窗口,屏幕...
用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\\n",i);} flag = 1;} return 0;} ...
c语言求100以内的素数
for(int i=2;i<=100;i++)\/*确定范围:2——100*\/ { for(int k=2;k<i;k++){ if(i%k==0)break;\/*如果找到一个不是1或者它本身的因子,则停止该循环,此时k
C语言编程:用筛选法求100之内的素数,
printf("100以内的素数:\\n"); for(i=2;i<=100;i++) if(a[i])printf("%d ",i); printf("\\n"); getch(); return 0; } 已赞过 已踩过< 你对这个回答的评价是? 评论 收起 BrotherGao 2013-03-29 · TA获得超过1500个赞 知道小有建树答主 回答量:334 采纳率:0% 帮助的人:300万...
C语言:求100以内的素数,用数组完成此题。
int a[100],b[100];int count=0;for(i=1;i<=100;i++){ int Cnt=0;a[i-1]=i;for(int j=1;j<=i;j++){ if(a[i-1]%j==0)Cnt++;} if(Cnt == 2){ b[count]=a[i-1];count++;} } printf("100以内总共有%d个素数,分别如下:\\n",count);for(i=0;i<count;i++)...
c语言怎样求2到100之间的素数?
源代码如下:include <stdio.h> include <math.h> void main(){ int n=0, i, j,w,k;for(i=2;i<=1000; i++){ w=1;k=sqrt(i);for (j=2; j<=k; j++)if (i%j==0) {w=0;break;} if (w) { ++n;if (n%10==0) printf("%d\\n",i);else printf("%d\\t",i);...