C语言练习--给定两个数 ,取最大公约数

给定两个数 ,取最大公约数

暴力求解 效率低

int main()

{

int a = 0;

int b = 0;

scanf("%d %d", &a, &b);

int min = (a < b) ? a : b;

int i = 0;

for (i = min; i > 0; i--)

{

if (a % i == 0 && b % i == 0)

{

printf("有公约数:>%d", i);

break;

}

}

return 0;

}

辗转相除法

int main()

{

int a = 0;

int b = 0;

int c = 0;

scanf("%d %d", &a, &b);

while (c=a%b)

{

a = b;

b = c;

}

printf("最大公约数为 % d",b);

return 0;

}

相关推荐
Evand J3 分钟前
【PMSM例程4】PMSM电阻辨识与模型补偿EKF,MATLAB例程。附下载链接,包运行成功
开发语言·matlab·电机·ekf·卡尔曼·pmsm
王仔小奶4 分钟前
Rust 正在接管金融圈?深度拆解一份高薪 FinTech 岗位 JD
开发语言·金融·rust
小王C语言7 分钟前
Qt常用控件:多元素控件,纵向列表,表格控件,树状控件
开发语言·qt
fanruitian7 分钟前
python 可视化 panda seaborn matplotlib.pyplot
开发语言·python·matplotlib
jnrjian27 分钟前
delete file shell 让 AI 写脚本
服务器·开发语言
傅科摆 _ py41 分钟前
DP,贪心,堆和栈,二分力扣复习
开发语言·python·算法
kiracrimson1 小时前
栈与队列容器:适配器、deque 与 priority_queue
开发语言·c++·适配器模式
北冥you鱼1 小时前
Go 语言 CRUD 实战:从接口设计到真实业务场景
开发语言·后端·golang
adinnet20261 小时前
电商客服对话知识库的自学习闭环与质量演进机制
学习
郭小李2 小时前
springmvc 拦截器
java·开发语言·前端