‘壹’ 输出所有3位的素数,要求循环次数5000以下!c语言
摘要 输出各位都是素数的所有三位数。
‘贰’ 找出三位数中,百位数和个位数相同的所有素数。 用C语言编写程序
#include <stdio.h>
#include <math.h>
void main()
{
int i,j;
for(i=100;i<1000;i++)
if(i/100==i%10) //取百位数用/100,取个位数用%10。此句筛选百位与个位相同的数
{
for(j=2;j<=sqrt(i);j++) //从2至i开方除,判断是否是素数
if(i%j==0) break;
if(j>sqrt(i)) //若没执行break,则表明 j 自增到sqrt(i)+1而退出
循环,自然>sqrt(i)
printf("%d\n",i);
}
}
‘叁’ C语言编程 输出所有的3位数字的质数,为什么错了
程序在运行中,每检查一个数时,要先置标志y=1,否则,当y变为0时,会永远变不回1了。
参考代码如下:
#include<stdio.h>
voidmain()
{
inti,x,y=1,z=1;
for(i=100;i<1000;i++)//100-999,注意i不要写成1
{
y=1;//每次都要初始化为1
for(x=2;x<i;x++)
{
if(i%x==0)//有因数,y变0
y=0;
}
if(y==1)//没有因数,y不会变0,是质数
{
printf("%6d",i);
if(z++%5==0)//5个一换行
printf(" ");
}
}
}
‘肆’ 求3位正义整数内,至少一个数字是3的所有素数之和 C语言
#include <stdio.h>
#include <math.h>
void main()
{
int n;
int k;
int d,b,c,sum=0;
int i,j=0,a[500][3];
for(n=100;n<1000;n++)
{ k=sqrt(n);
for(i=2;i<=k;i++)
if(n%i==0)
break;
if(i==k+1)
{
d=n/100;//
b=n%10;//ge
c=n/10%10;//shi
a[j++][0]=d;
a[j][1]=b;
a[j][2]=c;
}
}
for(i=0;i<=j;i++)
{
if(a[i++][0]==3||a[i][1]==3||a[i][2]==3)
{sum+=a[i][0]*100+a[i][2]*10+a[i][1];}
}
printf("%d\n",sum);
}
‘伍’ C语言编写程序,求所有三位数中的素数。
#include <stdio.h>
#include <math.h>
main()
{
int x,k,flag,n=0;
for(x=100;x<=999;x++)
{
flag=1;
for(k=2;k<=sqrt(x);k++)
if(x%k==0)
{flag=0; break;}
if(flag==1)
{
if(n%10==0) printf("\n");
n++;
printf("%5d",x);
}
}
}
‘陆’ c语言求三位数以下绝对素数
#include "stdio.h"
#include "math.h"
#include "stdlib.h"
void main()
{
int i,n,k=0;
for(n=2;n<=1000;n++)
{
for(i=2;i<=sqrt(n);i++)
{
if(n%i==0)
{
k=1;
break;
}
}
if(k==0)
printf("%5d",n);
}
}
亲,希望采纳!!!
‘柒’ 用C语言,输出是素数的所有3位整数。请问错在了哪里
#include<stdio.h>
intmain()
{
intx,i;
for(x=100;x<1000;x++)
{
for(i=2;i<x;i++)
if(x%i!=0);
else
break;
if(i>=x)//少了判断条件!只有找不到因数时,才是素数
printf("%d",x);
}
}
‘捌’ C语言中随机产生N个三位数,找出其中的素数并输出
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
int check(int a)
{
int i,tmp=sqrt(a);
for(i=2;i<tmp+1;i++)
if(a%i == 0) break;
if(i < tmp+1) return 0;
return 1;
}
int main()
{
int i,n,a;
printf("input the number of n:");
scanf("%d",&n);
srand(time(NULL));
for(i=0;i<n;i++)
{
a=rand()%901+99;
if(check(a))
{
printf("%d\n",a);
}
}
return 0;
}
‘玖’ C语言输出三位数中所有的素数,我哪里错了跪求大神帮忙。
你这就用上函数嵌套了?居然在函数内部规定sqrt(n)=0,然后又把n的值作为返回值给sqrt(n)=n,sqrt函数表示很崩溃,它不知道该等于哪个了,修改建议如下,直接把sqrt函数内部的那个赋值语句去掉,然后改成return 0,else return 1;