求大家看看这个代码哪儿有问题,辗转相除求最大公约数

img


不知道哪儿有问题,感觉逻辑什么都对的,大家帮忙看看,提提问题

13行,刚开始c默认为零,那循环一次也不能进行。应该把c初始化等于a%b

你的c没有初始化,辗转相除法没必要必须是大数除小数,因为经过一次取余就改变位置了

C需要初始化,需要考虑C为0的情况,可以使用do...while的结构,或者在原有代码前对使用 a%b对c进行初始化赋值

浅学一下