C 语言实例 – 求两数的最大公约数 2021年12月7日19:49:55C语言教程评论2021年12月7日 C 语言实例 - 求两数的最大公约数 用户输入两个数,求这两个数的最大公约数。 实例 - 使用 for 和 if #include <stdio.h> int main() { int n1, n2, i, gcd; printf("输入两个正整数,以空格分隔: "); scanf("%d %d", &n1, &n2); for(i=1; i <= n1 && i <= n2; ++i) { // 判断 i 是否为最大公约数 if(n1%i==0 && n2%i==0) gcd = i; } printf("%d 和 %d 的最大公约数是 %d", n1, n2, gcd); return 0; } 运行结果: 输入两个正整数,以空格分隔: 81 153 81 和 153 的最大公约数是 9 实例 - 使用 while 和 if #include <stdio.h> int main() { int n1, n2; printf("输入两个数,以空格分隔: "); scanf("%d %d",&n1,&n2); while(n1!=n2) { if(n1 > n2) n1 -= n2; else n2 -= n1; } printf("GCD = %d",n1); return 0; } 运行结果: 输入两个数,以空格分隔: 81 153 GCD = 9 实例 - 适用正数和负数 #include <stdio.h> int main() { int n1, n2; printf("输入两个数,以空格分隔: "); scanf("%d %d",&n1,&n2); // 如果输入的是负数,将其转换为正数 n1 = ( n1 > 0) ? n1 : -n1; n2 = ( n2 > 0) ? n2 : -n2; while(n1!=n2) { if(n1 > n2) n1 -= n2; else n2 -= n1; } printf("GCD = %d",n1); return 0; } 运行结果: 输入两个数,以空格分隔: 81 -153 GCD = 9 实例 - 使用递归 #include <stdio.h> int hcf(int n1, int n2); int main() { int n1, n2; printf("输入两个正整数: "); scanf("%d %d", &n1, &n2); printf("%d 和 %d 的最大公约数为 %d", n1, n2, hcf(n1,n2)); return 0; } int hcf(int n1, int n2) { if (n2 != 0) return hcf(n2, n1%n2); else return n1; } 历史上的今天12 月72020Windows必装软件IDM(优秀下载工具)v6.38.14 完美**版 点赞 登录收藏 https://www.gongshiku.com/html/202112/c-yuyanshili-qiuliangshudezuidagongyueshu.html 复制链接 复制链接 运营不易, 感谢支持! 我的微信 我的微信公众号 我的微信公众号扫一扫 我的公众号
C语言教程 C 标准库 – C 标准库 - <time.h> 简介 time.h 头文件定义了四个变量类型、两个宏和各种操作日期和时间的函数。 库变量 下面是头文件 time.h 中定义的变量类型: ... 2021年12月7日1
C语言教程 C 标准库 – C 标准库 - <string.h> 简介 string .h 头文件定义了一个变量类型、一个宏和各种操作字符数组的函数。 库变量 下面是头文件 string.h 中定义的变量类型... 2021年12月7日评论
C语言教程 C 标准库 – C 标准库 - <stdlib.h> 简介 stdlib .h 头文件定义了四个变量类型、一些宏和各种通用工具函数。 库变量 下面是头文件 stdlib.h 中定义的变量类型: ... 2021年12月7日评论
C语言教程 C 标准库 – C 标准库 - <stdio.h> 简介 stdio .h 头文件定义了三个变量类型、一些宏和各种函数来执行输入和输出。 库变量 下面是头文件 stdio.h 中定义的变量类型: ... 2021年12月7日评论