C语言,高手赐教~!

[复制链接]
查看11 | 回复1 | 2009-6-15 14:30:47 | 显示全部楼层 |阅读模式
举例:220 和 284micalble number. 因为1、2、4、5、10、11、20、22、44、55、110都能被220整除,他们的和是284.以下是我的程序,但是一运行就停止运作了。
#include
int amicalbepair(int,int);
int main(int argc, char **argv) {
printf("Enter a pair of numbers:");
int x,y;
fflush(stdout);
scanf("%d%d",&x,&y);
amicablepair(x,y);
return 0;
}
int amicablepair(int x,int y) {
int n,u=0,v=0;
for (n=0;n<x;n++) {
if(x%n==0) {
u=u+n;
}
}
int t;
for (t=0;t<y;t++){
if(y%t==0) {
v=v+t;
}
}
if (u==y || v==x){
printf("%d and %d are an amicalbe pair.",x,y);
}
else {
printf("%d and %d are not an amicalbe pair",x,y);
}
return 0;
}

回复

使用道具 举报

千问 | 2009-6-15 14:30:47 | 显示全部楼层
主要是因为两个for循环中,n和t初始值都为零抛出了异常,将它们初始值都改为1就行了。其他没问题。...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行