用C语言编写程序:求两数的最大公约数。
来源:互联网 发布:浮云淘宝小号出售平台 编辑:程序博客网 时间:2024/06/06 01:32
此程序用了3个方法(相减法、穷举法、辗转相除法)来求两数的最大公约数,用户可自己选择用哪种算法。
#include<stdio.h>#include<stdlib.h>int select=1;//select 为是否退出系统的标记void subtract(){int a,b;printf("请输入两个数据:\n"); scanf("%d %d", &a, &b); while(a!=b)//用大数减小数直到差和减数相同,输出最大公约数{if(a>b) a=a-b;else b=b-a;} printf("最大公约数为%d。\n", a); }void divide()//辗转相除法{int a, b, c; printf("请输入两个数据:\n"); scanf("%d %d", &a, &b); while(b!=0) //当余数为0时跳出循环{ c=a%b; a=b; b=c;} printf("最大公约数为%d。\n", a); }void exhaustion()//穷举法求最大公约数{int a,b,c;printf("请输入两个数据:\n"); scanf("%d %d", &a, &b); for(c=a;c>0;c--)if(a%c==0&&b%c==0)//第一次可以整除的数为最大公约数{printf("最大公约数为%d。\n",c);break;//获得最大公约数就跳出循环}}void menu()//初始界面{int i;printf("\n");printf(" 求两数的最大公约数算法 \n");printf(" ********************************************************\n");printf(" * 请选择算法: *\n");printf(" * 0.相减法。 1.相除法。 *\n");printf(" * 2.穷举法。 3.退出程序。 *\n");printf(" ********************************************************\n");scanf("%d",&i);switch(i){case 0:subtract();break;case 1:divide();break;case 2:exhaustion();break;case 3:select =0;break;default:printf("请在0-3之间选择\n");}}int main(){ while(select){menu();}system("pause");return 0;}
0 0
- 用C语言编写程序:求两数的最大公约数。
- 编写C语言程序求两个数的最大公约数
- 求两个数的最大公约数(c语言编写)
- C语言 编写一个函数,用递归方式求最大公约数。
- 请用Java或C编写一个程序,找出两个整数的最大公约数,公因数
- C语言实现求两数的最大公约数最小公倍数
- C语言程序编写
- C语言程序编写
- 用 C 语言编写 Windows 服务程序的五个步骤
- 用 C 语言编写 Windows 服务程序的五个步骤
- 用C语言编写Windows服务程序的五个步骤
- 用 C 语言编写 Windows 服务程序的五个步骤
- 用C 语言编写 Windows 服务程序的五个步骤
- 用C语言编写Windows服务程序的五个步骤
- 用C语言编写Windows服务程序的五个步骤
- 用C语言编写Windows服务程序的五个步骤
- 用C语言编写简单的接口程序
- 用C语言编写Windows服务程序的五个步骤
- ARM64 用户空间时发生中断el0_irq
- JStorm源码分析(二)JStorm中的基本数据结构—— Fields,Values&Tuples(草稿|无图版)
- 小谈移动端加密
- 【4-1】操作文件和目录
- IIC协议
- 用C语言编写程序:求两数的最大公约数。
- 讲解如何进行SNMP MIB的查看
- TextView属性总结,简单的控件也可以很复杂
- django 运行报错view must be a callable or a list/tuple in the case of include()
- JS数据结构与算法(三)
- opencv+树莓派+自带摄像头 获取视频
- Android多线程
- Tomcat server.xml标签解释
- JavaScript高级