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;

}

相关推荐
H.莓飛26 分钟前
【数据结构】排序总结与规模实测
linux·服务器·开发语言·数据结构·visual studio·1024程序员节
keyipatience31 分钟前
Git学习(4)Git分布式优势与实战配置全解析
git·学习
会编程的吕洞宾42 分钟前
RAG检索质量怎么评估?3个指标+LLM裁判实战
java·开发语言·人工智能·后端
FLJwu1 小时前
运动相机采购实战|第四篇(终章):一张清单走完选型全流程,把风险拦在源头
c语言·开发语言·数码相机·运动相机·oem 量产
收纳过往1 小时前
数据库加索引的时机:慢查询日志说话
android·开发语言·数据库·python·低代码·rxjava
蘑菇小白2 小时前
Linux多线程开发
linux·开发语言·线程
2601_966949652 小时前
Python 实战:如何统计五档盘口买卖盘总挂单量?附计算公式与代码
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
全栈陈序员3 小时前
【Python】基础语法入门(二十九)—— 正则表达式实战:文本处理利器
开发语言·人工智能·python·正则表达式
Wang's Blog3 小时前
Java 项目实战: 交友项目 - 发布评论
java·开发语言·交友