迷茫管家近卫昴本子:C语言求100以内同构数

来源:百度文库 编辑:神马品牌网 时间:2024/04/29 19:00:56
用C语言写 会做帮个忙吧
简便最好

#include <stdio.h>
int func(int n)
{
int s=n*n;
for(;n;n/=10,s/=10)
{
if(n%10!=s%10)
{
return 0;
}
}
return 1;
}
int main(void) 
{
int i;
for(i=1;i<100;++i)
{
if(func(i))
{
printf("%d\n",i);
}
}
return 0;
}

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
char *right(char *ms,int len); /*截取一个字符串尾部长为len个字符的子串*/
void main()
{
long a;
int len;
char as[10];
char ms[20];
printf("求[1,100]中的同构数:\n");
for(a=1;a<=100;a++)
{
ultoa(a,as,10);
len=strlen(as);
ultoa(a*a,ms,10);
if(strcmp(as,right(ms,len==0) printf("%s 其平方为 %s\n",as,ms); }
}
char *right(char *ms,int len)
{
int i,j;
for(i=0;i<(signed)strlen(ms);ms++);
for(j=0;j<len;j++,ms--);
return ms;

}

欢迎插旗~