C语言程序设计50例(经典收藏)

2020-01-06 20:20:54王冬梅

    t*=n;
    s+=t;
  }
  printf("1+2!+3!...+20!=%en",s);
  getch();
}
==============================================================
【程序26】
题目:利用递归方法求5!。
1.程序分析:递归公式:fn=fn_1*4!
2.程序源代码:
复制代码
#include "stdio.h"
#include "conio.h"
main()
{
  int i;
  int fact();
  for(i=0;i<5;i++)
  printf("40:%d!=%dn",i,fact(i));
  getch();
}
int fact(j)
int j;
{
  int sum;
  if(j==0)
    sum=1;
  else
    sum=j*fact(j-1);
  return sum;
}
==============================================================
【程序27】
题目:利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。
1.程序分析:
2.程序源代码:
复制代码
#include "stdio.h"
#include "conio.h"
main()
{
  int i=5;
  void palin(int n);
  printf("40:");
  palin(i);
  printf("n");
  getch();
}
void palin(n)
int n;
{
  char next;
  if(n<=1)
  {
    next=getchar();
    printf("n:");
    putchar(next);
  }
  else
  {
    next=getchar();
    palin(n-1);
    putchar(next);
  }
}
==============================================================
【程序28】