求约数的个数

来源:百度知道 编辑:UC知道 时间:2024/06/18 00:14:06
实验编程要求:
对于给定的2个正整数a≤b ,编程计算a 和b 之间约数个数最多的数。

★实验数据输入:
输入数据由文件名为input.txt 的文本文件提供.文件的第一行有两个正整数a 和b.

★实验结果输出:
程序运行结束时,若找到的a 和b 之间约数个数最多的数是x ,则将div(x)输出到文件output.txt中.

输入文件示例 输出文件示例
Input.txt output.txt
1 36 9
一个非负且大于1的整数的约数个数至少有两个

#include <stdio.h>
void main()
{
int a,b;
FILE *fp;
int div(int x);
fp=fopen("Input.txt","r");
fscanf(fp,"%d,%d",&a,&b);
fclose(fp);
fp=fopen("Output.txt","w");
if(div(a)>div(b))
fprintf(fp,"%d",div(a));
else
fprintf(fp,"%d",div(b));
fclose(fp);
}
int div(int x)
{
int i,j=0;
for(i=1;i<=x;i++)
if(x%i==0)
j++;
return j;
}

#include<stdio.h>
#include "stdlib.h"
long geshu(long n)
{long t=0,i;
for(i=1;i<=n;i++)
if(n%i==0)
t++;
return t;
}

main()
{FILE *p,*q;
p=fopen("input.txt","r");
q=fopen("output.txt","w");
long a,b,max=0,temp,i;
fscanf(p,"%d %d",&a,&b);
fclose(p);
if(a>b)
{temp=a;a=b;b=temp;