#include <stdio.h>
int lcm(int ,int);
int main()
{
int a,b,f;
printf("Enter the numbers:");
scanf("%d %d",&a,&b);
f=lcm(a,b);
printf("LCM of %d and %d : %d",a,b,f);
return 0;
}
int lcm(int a,int b)
{
static int x=1;
if(x%a==0 && x%b==0)
return x;
x++;
lcm(a,b);
}
このコードではエラーが発生していません。正解を返しますが、lcm関数の戻りキーボードなしで値がメイン関数に返される方法を教えてください。 "lcm(a、b);" !!説明してください !!リターンが再帰リターン関数で使用されないとどうなりますか?
未定義の動作が発生します。 –
残念ながら戻り値はmainで使用されています。この動作は、aとbの両方が1の場合にのみ定義されます。 – 2501
"このコードではエラーが発生していません" - いいえ、Cの警告も同様に深刻なものになります! – Olaf