zoukankan      html  css  js  c++  java
  • 100c之33:回文素数

    问题

    回文素数:求不超过1000的回文素数。所谓回文素数是指,对一个整数n从左向右和从右向左读都是一样的素数。

    分析

    穷举。

    解决方案

     1:  /**
     2:   * @file   033cprime.c
     3:   * @author Chaolong Zhang <emacsun@163.com>
     4:   * @date   Wed Jun  5 18:37:44 2013
     5:   * 
     6:   * @brief  回文素数:求不超过1000的回文素数。所谓回文素数是指,对一个整数n从左向右和从右向左读都是一样的素数。
     7:   * 
     8:   * 
     9:   */
    10:  #include <stdio.h>
    11:  int is_prime( int );
    12:  
    13:  int main(int argc, char *argv[])
    14:  {
    15:      int i,j,t,k,s;
    16:      printf ("Following are palindrome primes not greater than 1000\n");
    17:      for (i=0; i<=9 ; i++)
    18:      {
    19:          for (j=0; j <= 9; j++)
    20:          {
    21:              for (k=0; k <= 9; k++)
    22:              {
    23:                  s=i*100 + j*10 + k;
    24:                  t=k*100 + j*10 + i;
    25:                  if( 0==i && 0 == j ) t/=100;
    26:                  else if( 0 == i ) t/=10;
    27:                  if ((  s > 10 ) && ( s == t ) && is_prime( s ) )
    28:                      printf ("%d\t\n",s);
    29:              }
    30:  
    31:          }
    32:  
    33:      }
    34:      return 0;
    35:  }
    36:  
    37:  
    38:  int is_prime ( int n )
    39:  {
    40:      int i;
    41:      int flag=1;
    42:      if (n==2 || n==3)
    43:          return flag;
    44:      for ( i = 2; i <= ( n/2 + 1 ); ++i) 
    45:          if (n%i == 0 ) {
    46:              flag=0;return flag;
    47:          }
    48:  }
    

    输出结果

    Following are palindrome primes not greater than 1000
    11      
    101     
    131     
    151     
    181     
    191     
    313     
    353     
    373     
    383     
    727     
    757     
    787     
    797     
    919     
    929
    

    题后语

    在使用 i j k 三个变量构造 三位数时发现for循环的哑元变量加一过程很诡异:如果是(i++),则在本次for循环结束后再进行加一,如果是(++i)则判断完条件后就把i加一。gcc编译的代码就是这么做的。

      


    作者:emacsun
    出处:http://www.cnblogs.com/chaolong/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

     
  • 相关阅读:
    【原创】用python写的一个监测本地进程CPU占用的程序
    CSS清除浮动的7种方法以及优缺点
    JavaScript函数作用域
    BOM的概念以及相关操作
    文件与文件系统的压缩与打包
    CSRF
    netstat 命令详解
    httpd安装
    ubuntu 耳机没声音
    Linu正常使用MobaXterm
  • 原文地址:https://www.cnblogs.com/chaolong/p/3119481.html
Copyright © 2011-2022 走看看