代码编织梦想

求公约数:穷举法,占用更多资源

//求a和b的所有公约数
//如输入12 18时,输出1 2 3 6
//方法:枚举

#include <stdio.h>
int main(){
	int a, b;
	int min;
	scanf("%d %d", &a, &b);
	if (a<b){
		min = a;
	}
	else min = b;
	
	int i = 1;
	for (i=1; i<=min; i++){
		if (a%i==0){
			if (b%i==0){
				printf("%d",i);
				if (i!=min){
					printf(" ");
				}
			}

		}
	}

return 0;
}

输出结果示例: 

 辗转相除法(欧几里得算法):

//求最大公约数
//输入12 18,输出6

//18%12=6
//12%6=0

#include <stdio.h>
int main(){
	int a, b, c;
	scanf("%d %d", &b, &c);
	if (b>c){
		a=b;
		b=c;
	}
	else {
		a=c;
	}
	while(c!=0){
		c = a%b;
		a = b;
		b = c;
	}
	printf("%d", a);
	
	return 0;
}

输出结果示例结果:

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_42221355/article/details/127002405

c语言入门第九篇,循环语句练习题_n1ne丶sun的博客-爱代码爱编程

1.分别用while和for写一个程序。程序让用户输入一个n,然后计算1到n的和。 while版 #include<stdio.h> int main() { int n; int sum=0

3.17 c语言的入门小练习-爱代码爱编程

//1. 给定两个整形变量的值,将两个值的内容进行交换。 此题的思路比较简单,两数要进行交换,只需要增加一个变量"temp",来保存交换时候的中间变量即可。 #include<stdio.h> int main

c语言入门练习1_belongal的博客-爱代码爱编程

阿鲤今天分别写了五个小代码,但是用了五个小时,速度慢的原因有以下几点。 1:打字速度慢,不熟练 2:太粗心 3:思维缺乏训练 以下为 今天写的五个代码。 // 交换两个整形变量的值 #include<stdio.h&

c语言程序设计(翁凯老师)中m2019秋c入门和进阶练习集 7--26最大公约数和最小公倍数-爱代码爱编程

7-26 最大公约数和最小公倍数 本题要求两个给定正整数的最大公约数和最小公倍数。 输入格式: 输入在一行中给出两个正整数M和N(≤1000)。 输出格式: 在一行中顺序输出M和N的最大公约数和最小公倍数,两数字间

【PTA】7-26 最大公约数和最小公倍数 (15分)_中M2020春C入门练习第I段——变量、表达式、分支、循环-爱代码爱编程

题目 本题要求两个给定正整数的最大公约数和最小公倍数。 输入格式: 输入在一行中给出两个正整数M和N(≤1000)。 输出格式: 在一行中顺序输出M和N的最大公约数和最小公倍数,两数字间以1空格分隔。 输入样例: 511 292 输出样例: 73 2044 解答 #include<stdio.h> int main(){

C语言练习题集 - 题4-最大公因数、最小公倍数问题-爱代码爱编程

C语言练习题集 - 题3-最大公因数、最小公倍数问题(1) 题目: 输入两个正整数, m 和 n ,求其最大公约数和最小公倍数 用最通俗的手法入门编程!再拾阶而上! 写在最前: 1.最大公约数:  (1)分解质因数法  (2)辗转相除法  (3)更相减损术 2.最小公倍数:  (1)分解质因数法  (2)公式法   以上将是会用到的方

mysql最大公约数_最大公约数用算法-爱代码爱编程

世界上最早的算法:辗转相除法(求两个自然数最大公约数) 在数学界,辗转相除法,又称欧几里得算法,被认为是世界上最早的算法(公元前300年),该算法用于求两个最大公约数的算法。辗转相除法首次出现于欧几里得的《几何原本》(第VII卷,命题yⅠ和Ⅱ)中,而在中国则可以追溯至东汉出现的《九章算术》。 两个自然数的最大公约数是能够同时整除它们... 文章

C语言编程上手练习之路(从入门到提高)-爱代码爱编程

持续更新中,每天三练 问题1:【三数最值】 编写一个程序,输入a、b、c三个值,输出其中最大值。 #include<stdio.h> int main() { int i,j,k,n; int max(int a,int b,int c); printf("输入三个值\n"); scanf("%d %d %d\n"

题目 1011: [编程入门]最大公约数与最小公倍数(C)-爱代码爱编程

题目练习: C语言网. 题目描述 输入两个正整数m和n,求其最大公约数和最小公倍数。 输入 两个整数 输出 最大公约数,最小公倍数 样例输入 5 7 样例输出 1 35 运行代码: 最大公约数的计算可采取欧几里得算法(辗转相除法),就是代码中的gcd(最大公约数Greatest Common Divisor)函数。 其原理依据两个

明解c语言第八章答案,明解C语言入门篇(第8章练习题)-爱代码爱编程

8.1 #define diff(x, y) ((x) - (y)) 8.2 #define max(max(a, b), max(c, d)) ((max(a, b) > max(c, d)) ? (max(a, b)) : (max(c, d))) #define max(max(max(a, b), c), d) ((max(max

中学生c语言入门演练100例,中学生C语言入门演练100例(信息学奥林匹克竞赛指导丛书)...-爱代码爱编程

   点此进入购买页 *本商品由商家提供,与王朝网络无关,有任何问题请与具体商家联系。  参考价格: 查看价格 分类: 图书,教材教辅与参考书,高中,综合, 品牌: 李学武 基本信息·出版社:清华大学出版社 ·页码:243 页 ·出版日期:2007年 ·ISBN:9787302143284 ·条形码:9787302143284 ·包

《C语言入门100例》(第24例) 最小公倍数和最大公约数-爱代码爱编程

文章目录 一. 概念定义1.1 lcm算法二. 课后练习1819. 序列中不同最大公约数的数目 一. 概念定义   最小公倍数就是两个数a,b他们的公共倍数中最小的那个(感觉说了跟没说一样)。 1.1 lcm算法 在学习lcm算法之前我们需要先补充一下gcd的算法,推荐博客: 最大公约数   lcm算法就是计算两个数的最小公倍数算法。

C语言入门(练习题)-爱代码爱编程

达式、分支、循环 Remaining Time:33day(s) 返回 7-15 BCD解密 (10 point(s)) BCD数是用一个字节来表达两位十进制的数,每四个比特表示一位。所以如果一个BCD数的十六进制是0x12,它表达的就是十进制的12。但是小明没学过BCD,把所有的BCD数都当作二进制数转换成十进制输出了。于是BCD的0x12被

【蓝桥杯学习笔记】2. 常用模型----最大公约数和最小公倍数-爱代码爱编程

系列文章目录 【蓝桥杯学习笔记】1. 入门基本语法及练习题 文章目录 系列文章目录前言一、最大公约数二、最小公倍数总结 前言  蓝桥本笔记-----从入门到放弃  本片文章使用Python语言编写----Now is better than never 一、最大公约数 最大公约数:指两个或多个整数共有约数中最大的一个

c语言初学练习_char * s_gets(char * st, int n) { char * ret_val; -爱代码爱编程

写在前面,当时练习以下程序是出于应试,以下有很多应试会考到的题目,例如,最小公倍数、日期转换、选择排序、逆序...如果有很多有应试需求的人们需要整理版的题库,我会抽时间去帮忙整理,祝大家考个好成绩。 //book.c 一本书的图书目录,本题来自C Primer Plus例题,当时觉得对于应用结构体帮助很大,照着敲了一遍。 #include<s

顺序表(c++实现)_顺序表前驱后继-爱代码爱编程

数据结构(面向对象方法与C++语言描述)(第2版)线性表内容整理 顺序表 顺序表是基于数组的线性表的存储表示,其特点是用物理位置上的邻接关系来表示结点间的逻辑关系。 优点: (1)无需为表示结点间的逻辑关系而增加额外