1条回答 默认 最新
- threenewbee 2017-11-29 13:32关注
int check_repeat(int n) { int flag[10]={0}; int a; while(n) { a=n%10; n/=10; if(flag[a]) return 1;//发现重复 flag[a]=1; //标记出现过 } return 0; //正常退出循环 表示没有出现重复 } int prime(int num) //prime表示素数 { int i = 0; int k = 0; k = sqrt(num); for (i = 2; i <= k; i++) { if (num%i == 0) { return 0; } } return 1; } int main() { int x, y; scanf("%d %d", &x, &y); for (int i = x; i <= y; i++) { if (check_repeat(i) && prime(i)) printf("%d\n", i); } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报