C语言每日一练22——筛选范围内符合要求的平方数
题目
给定一个整数,在该整数范围内找出符合以下要求的数:是完全平方数,有相同数字。
知识点
该题目是道面试题,主要在于判断是否存在相同数字。
实现代码
/*
========================
Name :20200622.c
Author : 爱折腾大叔
Version :
Copyright : Your copyright notice
Description :
=========================
#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int HasSameNum(int num)
{
int temp=num;
int i=0,j;
int a[10]={0};
while(temp>0)
{
j=temp%10;
a[j]+=1;
temp=temp/10;
}
while((a[i]<2)&&(i<10))
{
i++;
}
if(i<10)
{
return 0;
}
else
{
return 1;
}
}
int main(void)
{
int result,num,m,n;
printf("请输入最大范围数:\n");
scanf("%d",&num);
n=(int)sqrt(num);
printf("在1-%d符合要求的数有:\n",num);
for(m=1;m<=n;m++)
{
result=m*m;
if(HasSameNum(result)==0)
{
printf("%d\n",result);
}
}
return 0;
}
运行结果
往期推荐