|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
/*本程序为辗转相除法的运算*/
#include <stdio.h>
extern int a,b,c,d;
int main()
{
int change(int a,int b);
scanf("%d %d",&a,&b);
if (a<b);
{
change(a,b);
}
while (d!=0);
{
c=a/b;
d=a-b*c;
a=b;
b=d;
}
printf("公约数为%d",b);
}
int change(int a,int b)
{
int temp;
temp=a;
a=b;
b=temp;
return 0;
本帖最后由 丶忘却的年少o 于 2017-11-5 13:23 编辑
你指的未知领域是什么?好像除了代码有点缺陷和错误运行起来没发现什么不对。
1. if判断后面加了“;”,相当于这个语句就废了!!!!
2.change函数返回的0根本没作用,所以直接定义void类型就好了,不要返回了。
3.全局变量的d一开始就是0呀,而且你没给它赋值,那么while( d != 0 )这个循环肯定不会进去!
4.while语句后面也加了“;”所以,这句也废了!没有循环条件的判断就直接进去执行内部的操作了
|
|