C语言求同构数:求指定区间内的同构数
#include
#include
#include
char *right(char *ms,int len);
void main()
{
long a;
int len;
char as[10];
char ms[20];
printf(" 求[1,10000] 中的同构数: \n");
for(a=1;a<=10000;a++)
{
ultoalen=strlen(as);
ultoa(a*a,ms,10);
if(strcmp(as,right(ms,len))==0)
(a,as,10);
printf("%s 其平方为 %s\n",as,ms);
}
}
char *right(char *ms,int len)
{
int i,j;
for(i=0;i
for(j=0;j
return ms;
}
c 语言 输出从 m 到 n 的孪生素数对
#include
#include
int prime(int n)
{ int i;
if(n<2)
return 0;
for(i=2;i<=sqrt(n);i++)
if(n%i==0)
return 0;
return 1;
}
void main()
{ int i,m,n;
printf("m:");
scanf("%d",&m);
printf("n:");
scanf("%d",&n);
for(i=m;i<=n-2;i++)
if(prime(i) && prime(i+2))
printf("%d,%d\n",i,i+2);
}
c 语言折半查找法
#include
#include
void main()
{
int cz(int a,int x,int y,int c[]);
int gh[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
int h,w;
scanf("%d",&h);
w = cz(h, 0, 9, gh);
if (w != -1)
{
printf("%d", gh[w]);
}
else
{
printf(" 没找到 \n");
}
getch();
}
int cz(int a,int x,int y,int c[])
{
int m;
if (x > y) return -1;
m = (x + y) / 2;
if (a == c[m])
{
return m;
}
if (a < c[m])
{
return (cz(a, x, m-1, c));
}
else
{
return (cz(a, m+1, y, c));
}
}
c 语言程序计算