ch27-18.c

来自「C语言程序设计上机指导与练习 冶金工业出版社 刘怀亮」· C语言 代码 · 共 56 行

C
56
字号
#include <stdio.h>
#define MAX  2000
int a[MAX], b[MAX], cnt = 0;

int isprime(int m)
{
   int i;
   for(i=2;i<=m/2;i++)
      if(m%i==0) return 0;
   return 1;
}
void jsVal()
{
   int i,j,qw,bw,sw,gw;
   int ab,cd;
   for(i=0;i<200;i++)
   {
      qw=a[i]/1000;     
      bw=a[i]%1000/100;
      sw=a[i]%100/10;  
      gw=a[i]%10;
      ab=10*qw+sw;   
      cd=10*gw+bw;
      if(isprime(ab)&&isprime(cd)&&ab>=10&&cd>=10) b[cnt++]=a[i];
   }
   for(i=0;i<cnt-1;i++)
      for(j=i+1;j<cnt;j++)
         if(b[i]<b[j]) {qw=b[i];b[i]=b[j];b[j]=qw;}
}
void readDat()
{
   int i;
   for(i = 0; i < MAX; i++) 
      a[i]=i+7001;
}
void writeDat()
{
   FILE *fp;
   int i;
   fp = fopen("out.dat", "w");
   fprintf(fp, "%d\n", cnt);
   for(i = 0; i < cnt; i++) fprintf(fp, "%d\n", b[i]);
   fclose(fp);
}
void main()
{
   int i;
   readDat();
   jsVal();
   printf("满足条件的数=%d\n", cnt);
   for(i = 0; i < cnt; i++)
      printf("%d ", b[i]);
   printf("\n");
   writeDat();
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?