例题2-2 aabb(7744)

输出所有形如aabb的4位完全平方数(即前两位数相等,后两位数也相等)

方法一: 思路先确定ab再判断

#include <stdio.h>//floor(x+0.5) 四舍五入 
#include <math.h>
int main()
{
  int a,b,sum,m;
  for(a=1;a<=9;a++)	
  {
  	for(b=0;b<=9;b++)
  	{
  		sum=a*1000+a*100+b*10+b;
        m=floor(sqrt(sum)+0.5);
        if(sum==(m*m))
        {
        	printf("%d",sum);
		}
	}
  }
}

重要知识点:floor(x)返回不超过x的最大整数

                     floor(x+0.5)四舍五入

方法二: 从1000至9999中逐个拆分各数位,再进行判断

#include<stdio.h> 
int main()
{
  int x,n,hi,lo;
  for(x=1;;x++)
  {
  	n=x*x;
  	if(n<1000)
  	continue;
  	if(n>9999)
  	break;
    hi=n/100;
	lo=n%100;
	if(hi/10==hi%10&&lo/10==lo%10) 
	{
		printf("%d",n);
	}
   } 
} 
重要知识点:
continue;//跳出本次循环
break;//结束循环



猜你喜欢

转载自blog.csdn.net/weixin_27848283/article/details/80979426
2-2