请教高手,用C语言编程求555555的约数中最大的三位数是多少?

来源:百度知道 编辑:UC知道 时间:2024/06/22 01:22:22
用C语言编程求555555的约数中最大的三位数是多少,越详尽越好,最好有解释,小弟在这里谢谢各位高手拉!

#include <stdio.h>

int main () {
int n = 555555, temp = 999;//让n为555555,把temp置为最大的三位数
while (temp > 1) {
if (n % temp == 0 && temp >= 100) //如果temp能被n整除(也就是说temp是n的约数),并且temp大于100(保证它是三位数)
break; //符合上一行提到的条件就跳出
temp -= 2; //否则就把temp减2(这是因为n是奇数,所以约数也只可能是奇数,这样能减少一半左右的计算量)
}
if (temp == 1) //如果temp等于1,那说明没有找到符合条件的
printf("Don't find.\n");
else //找到符合条件的,打印
printf("%d\n", temp);
}

#include<stdio.h>

void main()
{
const long n=555555;
long i;

for(i=n/2;i>1;i--)//从大往小查找
{
if(n%i==0)//是n的约数
{
if(i/1000==0
&&i/100!=0)//是三位数
{
printf("%d!\n",i);
break;
}
}
}
}

int main()
{
long n = 555555;
int i;
for