Récemment, j'ai commencé à apprendre une méthode et à la partager avec Xiaobai comme moi
(Peut-être que l'écriture n'est pas très bonne, si vous trouvez des lacunes, veuillez donner des suggestions)
L'idée de l'image est la suivante:
Idées :
1. Comparez la taille des deux (comme a>b)
code afficher comme ci-dessous:
int a=0;
int b=0;
printf("输入a和b的值:>");
scanf("%d%d",&a,&b);
int max=(a>b?a:b);//最大值
int min=(a<b?a:b);//最小值
2. Valeur maximale divisée par la valeur minimale
code afficher comme ci-dessous:
max%min==0
3. Lorsque le diviseur est 0, le plus grand diviseur commun est la valeur minimale
L'ensemble du code est le suivant :
#include<stdio.h>
int Add(int a,int b)
{
int max=(a>b?a:b);//最大值
int min=(a<b?a:b);//最小值
if(max%min==0)
return min;
return Add((max%min),min);
}
int main()
{
int a=0;
int b=0;
printf("输入a和b的值:>");
scanf("%d%d",&a,&b);
Add(a,b);//返回最大公约数
printf("%d",Add(a,b));
return 0;
}