#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main()
{
int n;
int y;
while (1)
{
printf("选择查找类型:0.退出;1.回文数;2.素数;3.亲密数;4.水仙花数。\n");
scanf("%d", &y);
if (y!=0)
{printf("输入范围");
scanf("%d", &n);
switch (y)
{
case 1:
huiwenshu(n);
break;
case 2:
sushu(n);
break;
case 3:
qinmishu(n);
break;
case 4:
shuixianhuashu(n);
break;
default:
printf("输入有误!\n");
}
}
else goto END;
}
system("pause");
END:return 0;
}
int Hui(int hui)
{
int temp;
int sum = 0;
temp = hui;
while (hui)
{
sum = sum * 10 + hui % 10;
hui /= 10;
}
if (temp == sum)
{return 1;}
return 0;
}
void huiwenshu(int hui)
{
int i;
for (i = 1; i < hui; i++)
{
if (Hui(i))
{printf("%d\n", i);}
}
}
int Su(int su)
{
int i;
if (su < 2)
{return 0;}
for (i = 2; i <= sqrt(su); i++)
{
if (su%i == 0)
{return 0;}
}
return 1;
}
void sushu(int su)
{
int i;
for (i = 1; i <= su; i++)
{
if (Su(i))
{printf("%d\n", i);}
}
}
int qinmishu(int qin)
{
int a, b, c, i;
for (a = 1; a<qin; a++)
{
for (b = 0, i = 1; i <= a / 2; i++)
{
if (!(a%i))
{b += i;}
}
for (c = 0, i = 1; i <= b / 2; i++)
{
if (!(b%i))
{c+= i;}
}
if (c == a&&a < b)
{printf("%4d--%4d\n", a, b);}
}
}
int shuixianhuashu(int shui)
{
int i, a, b, c;
if (shui > 1000)
{shui = 1000;}
if (shui < 100)
{return 0;}
i = 100;
while (i<shui)
{a = i / 100;
b = i % 100 / 10;
c = i % 10;
if (i == a*a*a + b*b*b + c*c*c)
{printf("%d\n", i);}
i++;}
}
#include#include#includeint main(){ int n; int y; while (1) { printf("选择查找类型:0.退出;1.回文数;2.素数;3.亲密数;4.水仙花数。\n"); scanf("%d", &y); if (y!=0) {printf("输入范围"); scanf("%d", &n); swi