初学者,C语言问题,100-999绝对素数(幻影素数)的问题

绝对素数:例如107和701都是素数,而且他们相反,所以他们是绝对素数。
我会求素数,但是不会求绝对素数,希望大神们能给予帮助啊,不甚感激,希望能在我的代码上补充就好了

 #include<stdio.h>
int main()
{
    int i,k,flag=1;
    for(i=100;i<=999;i++)
    {
        flag=1;//   notice
        for(k=2;k<i;k++)
        {
            if(i%k==0)
            {
                flag=0;
            }

        }
        if((flag==1)&&(i!=1))
        {
            printf("%d  ",i);

        }


    }

}


c

3个回答

#include<stdio.h>
#include <math.h>

#define SWAP(a, b, t) t = (a), (a) = (b), (b) = (t);  // 交换两个数的位置

int foo1(int m);          // 计算素数  , 是返回1, 否返回0
int foo2(int m);          // 计算反序数, 是返回1, 否返回0

int main()
{
    int m, n, x;
    int t;

    scanf("%d%d", &m, &n);
    if (m > n)             // 如果第一个数大于第二个数,就交换位置 没有做<1000的判断, 需要可以加上去.
        SWAP (m, n, t);

    for (x = m; x <= n; x++)
        if (foo1(x))       // 1. 计算x是否是素数
            if (foo2(x))   // 2. 计算反序数是否是素数
            printf("%d\n", x);
    return 0;
}

int foo1(int m)
{
    int i;
    for (i = 2; i <= sqrt(m); i++)
        if (m % i == 0)
            return 0;
    return 1;
}

int foo2(int m)
{
    int x = 0, t = 0;

    while(m) {         // 求反序数
        x = m % 10;
        t = t * 10 + x;
        m = m / 10;
    }
    if (foo1(t))      // 计算反序数是否是素数.
        return 1;
    return 0;
} 

加了一个生成相反的数的一个函数

 #include<stdio.h>
#include<iostream>
using namespace std;
int reverse( int num )
{
    int temp, target;
    temp = num;
    target = 0;
    while( temp )
    {
        target = target*10 + temp % 10;
        temp /= 10;
    }
    return target;
}
int main()
{
    int i,k,flag=1;
    for(i=100;i<=999;i++)
    {
        flag=1;//   notice
        for(k=2;k<i;k++)
        {
            int i_reverse = reverse(i);//得到相反的数
            if(i%k==0||i_reverse%k==0)//同时判断是否能整除
            {
                flag=0;
            }
        }
        if((flag==1)&&(i!=1))
        {
            printf("%d  ",i);
        }
    }
    printf("\n");
}

图片说明

qq423399099
小灸舞 回复静深的成长笔记: 答案是啥
3 年多之前 回复
LIU_YANZHAO
言曌 但是答案错了啊
3 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
C语言:判断绝对素数
如果一个正整数是素数,它的反位数也是素数,则称这样的数为绝对素数。 如需继续了解,请查看百度百科绝对素数 #include&amp;amp;lt;stdio.h&amp;amp;gt; #include&amp;amp;lt;math.h&amp;amp;gt; int prime(unsigned int); int main() { unsigned ...
c语言素数问题
#includernvoid main()rnint a,b,c=1;rn for(a=100;a<=200;a++)rn for (b=2;b
C语言素数的问题
我想要1,2都打印出来的?但是不行呢,请帮忙看看。rnrnrn/* HELLO.C -- Hello, world */rnrn#include "stdio.h"rn#include "conio.h"rnrnmain()rnrnint i,j,k,a[100],n=0;rnfor(i=1;i<=100;i++)rna[i-1]=i;rnfor(j=0;j<=99;j++)rnrnrn for(k=1;k<=a[j];k++)rn if(k==1)rn k=1;rn else if(k%a[j]==0)break;rn rn if(k>=a[j])rn printf("%d" ,a[j]);rn n=n+1;rn if(n%4==0)rn printf("\n");rnrn rn getch();rn
素数、绝对素数、孪生素数
素数,我们都知道,除了一和他本身,其他都不能整除的数,即为素数,数学上又称为质数。 绝对素数呢?这里给出一个定义,就是指本身是素数,其逆序数也是素数的数。例如:10321与12301是绝对素数。 接下来我们就来看一下关于绝对素数的一个小程序: 编程实现:键盘输入一个整数n,输出小于n的所有绝对素数。 要求:编写函数int isprime(int x)实现测试参数x是否为素数;编写函数int
最近素数问题——C语言
从键盘输入一个整数,输出距离该数最近的素数  #include&amp;lt;stdio.h&amp;gt; #include&amp;lt;math.h&amp;gt; int judge(int x) { //判断素数 if (x &amp;lt; 2) return 0; for (int i = 2; i &amp;lt;= sqrt(x); i++) if (x % i == 0) return 0; ...
素数问题的C语言实现
素数(质数)的定义:指除了1和本身以外,不能被其他数整除的一类数。数学描述:给定任意的整数n,如果对任意的a(1&amp;lt;a&amp;lt;n),都有n%a!=0成立,那么称n是素数;如果n%a==0,则称n为合数。1.素数的判断①直观判断bool isprime(int n){ if(n&amp;lt;2) return false; for(int i=2;i&amp;lt;n;i++){ if(n%i==0)...
【C语言训练】素数问题
题目链接:http://115.28.203.224/problem.php?cid=1010&amp;pid=23 题目描述 编写一个程序判断一个数是否为素数 输入 整数 输出 1或0(其中1表示此数为素数,0为表示为不是素数) 样例输入 5 样例输出 1 代码 1 #include &lt;iostream&gt; 2 #include &lt;cmath&gt;...
绝对素数
绝对素数 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 510     通过数: 309  【题目描述】 如果一个自然数是素数,且它的数字位置经过对换后仍为素数,则称为绝对素数,例如13。试求出所有二位绝对素数。 【输入】 (无) 【输出】 所有二位绝对素数(由小到大,一个数一行)。 【输入样例】 (无) 【输
筛选素数 C语言
筛选素数 C语言 void () { int i=2; for(i;i&lt;100;i++) { if(i2) printf("%d ",i); else { int a=2; while((a { if(ai-1) printf("%d ",i); a++; } } } }int main() { Shai(); } 对十个整数排列 int Pai(char *arr) { int i=0;...
C语言实验——素数
Description 输出100->200之间的素数的个数,以及所有的素数。 Input 无 Output 100->200之间的素数的个数,以及所有的素数。 Sample Output 21 101 103 ... 197 199  #include int main() {     int i,f=101,a;     for(i=100;i<=200;i )     {      
C语言素数求解
此程序是作者本人在学习C语言过程中练习写的,主要内容为利用子函数求某一特定范围内的素数,简单易懂,可以作为C语言新手的很好参考案例。
C语言统计素数
文章出自个人博客https://knightyun.github.io/2018/03/30/c-prime-number.转载请申明 源码如下: #include&amp;amp;lt;stdio.h&amp;amp;gt; int main() { // 1-1000的素数 printf(&amp;quot;1-1000的素数: \n\n&amp;quot;); int i, j, co = 0; //设置co用于...
C语言找素数
找出0-50之间的所有素数,所谓素数就是只能被1和它本身整除的数字,比如:7,13,23等。 int m, n; for(m=2; m<=50; m++) { for(n=2; n<m; n++) { if(m%n==0) //n整除m跳出当前循环 break; }
c语言-素数和
素数和(5分) 题目内容: 我们认为2是第一个素数,3是第二个素数,5是第三个素数,依次类推。 现在,给定两个整数n和m,0&amp;lt;n&amp;lt;=m&amp;lt;=200,你的程序要计算第n个素数到第m个素数之间所有的素数的和,包括第n个素数和第m个素数。   输入格式: 两个整数,第一个表示n,第二个表示m。   输出格式: 一个整数,表示第n个素数到第m个素数之间所有的素数的和,包括...
C语言 MOOC 素数
#include <stdio.h> int main() { int M,N,sum=0,x=0,i; scanf ("%d %d",&M,&N); if (M>=1&&M<=N&&N<=500) { if(M==1) M++; for (M; M<=N; M++) { i
C语言实验-素数
题目描述 输出100->200之间的素数的个数,以及所有的素数。 输入 无 输出 100->200之间的素数的个数,以及所有的素数。 样例输出 21 101 103 ... 197 199   #include #include int main() {  int m,k;  int i;  int n=0,a=1,b;  b=a*a*a;  for(m
C语言素数幻方
这是素数的幻方, 代码简单易懂, 先找出所有素数 然后一个一个的比对
C语言求解素数
用于求解素数 需要用手机c4droid运行
C语言:素数和斐波那契数列
今天讲两个比较经典的C语言例子,相信大家都比较熟悉。一个是判断并输出素数,另一个是斐波那契数列。素数:质数(prime number)又称素数,有无限个。质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数。例如数字7,我们从2开始找它的因子,7/2,7/3,7/4,7/5,7/6,都不等于0,所以7是素数。那我们就定义一个因子,让判断的数字去除以这个因子。斐波那契数列:指的是这样一个数...
c语言 素数01
#include&amp;lt;stdio.h&amp;gt; int main() { /*int a=10,b=10; printf(&quot;a++=%d\n&quot;,a++); printf(&quot;%d\n&quot;,a); printf(&quot;++b=%d\n&quot;,++b); printf(&quot;%d&quot;,b); //printf(&quot; hello word&quot;);*/ int i,a; scanf (&quot;%d&
C语言 素数和
昨天做题目的时候,遇到很多问题,我以为是软件dvc++的,今天复习完c语言才发现是自己的问题,现在很开心!!学而时习之,不亦乐乎!#include &amp;lt;stdio.h&amp;gt; int main() { //素数表 int m,n; scanf(&quot;%d&quot;,&amp;amp;n); scanf(&quot;%d&quot;,&amp;amp;m); int i,j; int cnt=0; int a[200]; f...
素数用c语言
素数原理==用c语言编写素数
C语言 回文素数
回文素数(4分) 题目内容: 所谓回文素数是指对一个素数n,从左到右和从右到左读是相同的,这样的数就称为回文素数,例如11,101,313等。编程计算并输出不超过n(100&amp;lt;=n&amp;lt;1000)的回文素数,并统计这些回文素数的个数,其中n的值从键盘输入。 程序运行示例1 Input n: 100↙ 11 count=1 程序运行示例2 Input n: 1000↙ 11 101 131 1...
C++初学者,一道素数问题
现在想用for if switch(可以不用)rn然后编写出一道 初学者能看懂的 5-100以内的 素数rn按照 5个 一换行 输出出来,rn先谢谢了。
素数、孪生素数、素数环问题
        我们都知道素数的特征就是除了1和自身,它没有其他约数了,素数的编码也被很多初学者拿来练手,今天就针对素数的几个延伸例题进行整理,欢迎补充^-^ 素数       这里列出几种求素数的方法。   第一种:常规方法 (从2到(x-1)是否可以被整除) package text; import java.util.Scanner; public class Prime { ...
C语言(17)孪生素数问题
描述 写一个程序,找出给出素数范围内的所有孪生素数的组数。一般来说,孪生素数就是指两个素数距离为2,近的不能再近的相邻素数。有些童鞋一看到题就开始写程序,不仔细看题,咱们为了遏制一下读题不认真仔细的童鞋,规定,两个素数相邻为1的也成为孪生素数。 输入 第一行给出N(0&amp;lt;N&amp;lt;100)表示测试数据组数。 接下来组测试数据给出m,表示找出m之前的所有孪生素数。 (0&amp;lt;m&amp;lt;1...
筛选法求解素数问题C语言实现
效率提升的算法基础为: 1.一个素数的任意整数倍必为非素数; 2.任何一个合数n的最大因数必小于sqrt(n); 3.在第二轮非素数筛选时,因为是从所有奇数中按从小到大的顺序筛选素数的,由归纳法不难得知: 若i = 3为素数,则因为在第一轮筛序中已经将2的倍数的数排除了,故可直接从j = 3 * 3开始进行非素数的筛选; 若i = 5为素数,则因为在前边的筛选中已将2 * 5、3 * 5这两种情况...
[C语言]经典且基本的问题之素数
简介   本文将介绍关于c语言中一个非常简单且非常经典的问题,求100~200之间的素数,以及对代码的优化。 正文   求解素数问题最主要的就是先要了解什么是素数?   质数(prime number)又称素数,有无限个。质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数。也就是说除了1和它本身不能再被别的数整除。   附上代码如下: #include&amp;lt;stdio.h&amp;gt; i...
C语言(20)素数求和问题
描述 现在给你N个数(0&amp;lt;N&amp;lt;1000),现在要求你写出一个程序,找出这N个数中的所有素数,并求和。 输入 第一行给出整数M(0&amp;lt;M&amp;lt;10)代表多少组测试数据 每组测试数据第一行给你N,代表该组测试数据的数量。 接下来的N个数为要测试的数据,每个数小于1000 输出 每组测试数据结果占一行,输出给出的测试数据的所有素数和 样例输入 3 5 1 2 3 4 5...
C语言(1)素数距离问题
描述 现在给出你一些数,要求你写出一个程序,输出这些整数相邻最近的素数,并输出其相距长度。如果左右有等距离长度素数,则输出左侧的值及相应距离。 如果输入的整数本身就是素数,则输出该素数本身,距离输出0 输入 第一行给出测试数据组数N(0&amp;lt;N&amp;lt;=10000) 接下来的N行每行有一个整数M(0&amp;lt;M&amp;lt;1000000), 输出 每行输出两个整数 A B. 其中A表示离相应...
C语言 OJ..素数求和问题
题目描述 现在给你N个数(0 输入 第一行给出整数M(0 每组测试数据第一行给你N,代表该组测试数据的数量。 接下来的N个数为要测试的数据,每个数小于1000 输出 每组测试数据结果占一行,输出给出的测试数据的所有素数和 样例输入 3 5 1 2 3 4 5 8 11 12 13 14 15 16 17 18 10 21 22 23 24 25 26 27
C语言简易程序设计————13、素数问题
无意中发现了一个巨牛巨牛的人工智能教程,忍不住分享一下给大家。教程不仅是零基础,通俗易懂,小白也能学,而且非常风趣幽默,还时不时有内涵段子,像看小说一样,哈哈~我正在学习中,觉得太牛了,所以分享给大家。点这里可以跳转到教程! /*********** 题目:判断101-200之间有多少个素数,并输出所有素数。 1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,...
c语言关于孪生素数问题
以下为代码……不知道哪里错了,我自己调试的时候结果好像是对的啊,求帮忙看看nn#includen#includenvoid main()nn int a=0,b,i,j,x,n,n1;n long *s=0;n scanf("%ld",&n);nn s=(long*)malloc(sizeof(long)*(n+2));n n for(i=0;i0)n b++;n n1=j;n n n printf("%d\n",b);n n free(s);nnnn![图片](https://img-ask.csdn.net/upload/201705/05/1493914611_753636.png)![图片](https://img-ask.csdn.net/upload/201705/05/1493914904_491149.png)
c语言素数问题(急!!!在线等!!!)
下列程序的功能是:找出所有100以内(含100)满足I,I+4,I+10都是素数的整数I(I+10也在100以内)的个数cnt以及这些I之和sum。请编写函数countValue()实现程序要求,最后调用函数writeDat()把结果cnt和sum输出到文件out.dat中。rn部分源程序已给出。rn请勿改动主函数main()和输出数据函数writeDat()的内容。 rn#includernint cnt,sum;rnint isPrime(int number)rnrnint i,tag=1;rnrnfor(i=2;tag && i<=number / 2; i++)rnif(number % i ==0) tag =0;rnreturn tag;rnrnrnvoid countValue()rnrn 问题在这,看最后答案!~rnrnrnvoid main()rnrncnt=sum=0;rncountValue();rnprintf(\ 满足条件的整数的个数=%d\\n\ ,cnt);rnprintf(\ 满足条件的整数的和值=%d\\n\ ,sum);rnwriteDat();rnrnrnwriteDat()rnrnFILE *fp;rnrnfp=fopen(\ out.dat\ ,\ w\ );rnfprintf(fp,\ %d\\n%d\\n\ ,cnt,sum);rnfclose(fp);rn rnrnrn--------------------------------------------------------------------------------rnrnvoid countvalue()rnrnint i,j;rnfor(i=1;i<=90;i++)rn( 请问这个i是否要从2开始???rn此题的结果:i=1的话 cnt=8;sum=208;rn 若 i=2的话 cnt=7;sum=207;rn要是1开始循环的话,1岂不就是素数了...rn望各位大侠帮帮忙,小弟在线等!~~谢谢啦!~~~~) rnif(isprime(i)&&isprime(i+4)&&isprime(i+10))rncnt++;rnsum+=i;rnrnrnrn
1153:绝对素数
#include&amp;lt;cstdio&amp;gt; #include&amp;lt;cmath&amp;gt; int prime(int n) { for(int i=2;i&amp;lt;=floor(sqrt(n));i++)     if((n%i)==0) return 0; return 1; } int main() {     int j;     for(int i=10;i&amp;lt;=99;i++)     ...
python——绝对素数
【问题描述】所谓绝对素数是指具有如下性质的素数:一个素数,当它的各位数字逆序排列,形成的整数仍为素数,这样的数称为绝对素数。例如,11,79,389是素数,其各位数字对换位置后分别为11,97,983仍为素数,因此这三个素数均为绝对素数。编写函数absolute_prime(x),判断一个整数是否为绝对素数,如果x是绝对素数则返回1,否则返回0。编写程序,接收控制台输入的两个整数a,b。调用abs...
1153:绝对素数 水题
#include &amp;lt;algorithm&amp;gt; #include &amp;lt;iostream&amp;gt; #include &amp;lt;sstream&amp;gt; #include &amp;lt;cstdlib&amp;gt; #include &amp;lt;cstring&amp;gt; #include &amp;lt;cstdio&amp;gt; #include &amp;lt;string&amp;gt; #include &amp;lt;bits
素数的问题
rn 其他的都明白,为什么i>sqrt(m) 就是素数呀,迷糊了……菜鸟求救
素数问题
1.筛法求素数(适用于大范围内求素数) 先给出普通的求素数方案,如下是一种复杂度o(n√n)的求解100以内的素数求解方案 #include &lt;stdio.h&gt; #include &lt;math.h&gt; bool isprime(int n) { if(n&lt;=1) return false; int sqr=(int)sqrt(1.0*n); ...
素数问题
这次记录一道ACM很简单的一道题。 链接描述 题目意思呢是:输入三个数。a,d,n;然后形成一个序列:a,a+d;a+2d;a+3d…………从中寻找素数,输出第n个素数。 素数呢,就是只能整除1和它本身的数。贴个判定素数的代码: bool sushu(int a) { float a1; a1=a; in...
相关热词 c# stream 复制 android c# c#监测窗口句柄 c# md5 引用 c# 判断tabtip 自己写个浏览器程序c# c# 字符串变成整数数组 c#语言编程写出一个方法 c# 转盘抽奖 c#选中treeview