程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> 問題八十五:數值自乘遞歸

問題八十五:數值自乘遞歸

編輯:關於C語言

\


[plain]
#include <stdio.h> 
 
int recursion(int m, int n); 
 
int main() 

    int m; 
    int n; 
    int result; 
 
    printf("please enter m="); 
    scanf("%d", &m); 
 
    printf("please enter n="); 
    scanf("%d", &n); 
 
    result=recursion(m, n); 
     
    printf("%d^%d==%d\n", m, n, result); 
 
    return 0; 

 
int recursion(int m, int n)          //遞歸 

    int sum; 
 
    if(n==1) 
    { 
         sum=m; 
    } 
    else if(n==2) 
    { 
         sum=m*m; 
    } 
    else 
    { 
       if(n%2==0) 
       { 
            sum=recursion(m, n-2)*recursion(m, 2); 
       } 
       else  
       { 
            sum=recursion(m, n-1)*recursion(m, 1); 
       } 
    } 
 
    return sum; 

#include <stdio.h>

int recursion(int m, int n);

int main()
{
    int m;
    int n;
    int result;

 printf("please enter m=");
 scanf("%d", &m);

 printf("please enter n=");
 scanf("%d", &n);

 result=recursion(m, n);
   
 printf("%d^%d==%d\n", m, n, result);

    return 0;
}

int recursion(int m, int n)          //遞歸
{
 int sum;

    if(n==1)
 {
      sum=m;
 }
 else if(n==2)
 {
   sum=m*m;
 }
 else
 {
    if(n%2==0)
    {
      sum=recursion(m, n-2)*recursion(m, 2);
    }
    else
    {
         sum=recursion(m, n-1)*recursion(m, 1);
    }
 }

 return sum;
}
   

\

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved