c++一个三位数,各位数字互不相同,十位数字比个位、百位数字之和还要大,且十位数字、百位数字不是素数

2024-11-02 22:29:18
推荐回答(3个)
回答1:

帮你现写了一个如下:

#include 
int main()

 int a[6]={0,1,4,6,8,9}; //百位数字
 int b[6]={0,1,4,6,8,9}; //十位数字
 int c; //个位数字
 int s[100],cnt=0;
 for(int t=0; t<6; t++)
 {
  for(int i=0; i<6; i++)
  {
   for(c=0; c<=9; c++)
   {
    if(b[i]>a[t]+c)
    {
     s[cnt] = a[t]*100 + b[i]*10 + c;
     cnt++;
    }
    
   }
  }
 }
 printf("要找的数总共有%d个,分别如下:\n",cnt);
 for(int k=0; k {
  printf("%d\t",s[k]); 
 }
 printf("\n");
 return 0 ; 
}

运行结果如下:

回答2:

#include
using namespace std;

//0~9素数:2,3,5,7
int isprime(int i){
return i==2 ||i==3 ||i==5 ||i==7;
}
int main(){
int ge,shi,bai;
for(ge=0;ge<9;++ge)
for(bai=1;bai<9;bai++)
if(isprime(bai))
continue;
else
for(shi=ge+bai+1;shi<9;++shi){
if(isprime(shi))
continue;
if(ge!=shi && shi!=bai)
printf("%d%d%d\n",bai,shi,ge);
}

return 0;
}

回答3:

在c++中,少了一个分号就是少了整个程序。。。