C语言:回文数
题目
找出 1 到 n(10<n<1000)之间的所有即是回文数又是合数的数。
回文数:一个正整数,如果从左向右读(称之为正序数)和从右向左读(称之为倒序数)是一样的,
这样的数就叫回文数。合数:合数是指在大于 1 的整数中除了能被 1 和本身整除外,还能被其他
数(0除外)整除的数例如:
输入:30
输出:4 6 8 9 22
代码
#include<stdio.h>
int main(){
int n,i;
scanf("%d",&n);
for(i=1;i<n;i++){
if(check_huiWen(i)==1&&check_heShu(i)==1){
printf("%d ",i);
}
}
return 0;
}
int check_huiWen(int x){
int flg=0;
if((x>10&&x<100&&x/10==x%10)||(x>100&&x/100==x%10))flg=1;
if(x<10)flg=1;
return flg;
}
int check_heShu(int x){
int i;
int flg=0;
for(i=2;i<x;i++){
if(x % i == 0)flg=1;
}
return flg;
}

浙公网安备 33010602011771号