سلام به همه
سوال من این هستش که آیا دستور return در سی به معنای خروج از تابع نیز هستش ؟؟/ یعنی وقتی از دستور return توی تابع های فاکتوریل استفاده می کنیم باعث اتمام چرخش (loop) می شه یا نه ؟ منظورم با مثال می گم که بهتر متوجه بشید :
به تابع بالا دقت کنید بحث من و استاد ساختمان داده ام سر این هستش که من می گم تابع بدون استفاده از else هم کارش رو بدرستی انجام میده چون اگه شرط بر قرار نباشه دستور بدی اجرا می شه و اگه بر قرار هم باشه با اون return توی if حلقه break میشه و تابع fact شروع می کنه به برگشت ولی استادمون می گه نه return داخل if همچین خاصیتی رو نداره یعنی کلا return خاصیت break کردن نداره . حالا شما میگید حرف کدوم یکی از ما درسته ؟؟؟؟
با این که من برنامه رو بدون else هم توی سی نوشتم و جواب دادش .
سوال من این هستش که آیا دستور return در سی به معنای خروج از تابع نیز هستش ؟؟/ یعنی وقتی از دستور return توی تابع های فاکتوریل استفاده می کنیم باعث اتمام چرخش (loop) می شه یا نه ؟ منظورم با مثال می گم که بهتر متوجه بشید :
کد:
int fact (int n)
{
if (n<=1)
return (1);
else
return(n*fact(n-1));
}
به تابع بالا دقت کنید بحث من و استاد ساختمان داده ام سر این هستش که من می گم تابع بدون استفاده از else هم کارش رو بدرستی انجام میده چون اگه شرط بر قرار نباشه دستور بدی اجرا می شه و اگه بر قرار هم باشه با اون return توی if حلقه break میشه و تابع fact شروع می کنه به برگشت ولی استادمون می گه نه return داخل if همچین خاصیتی رو نداره یعنی کلا return خاصیت break کردن نداره . حالا شما میگید حرف کدوم یکی از ما درسته ؟؟؟؟
با این که من برنامه رو بدون else هم توی سی نوشتم و جواب دادش .