import java.util.Scanner;

public class Factorial {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n; while (true) {
System.out.print("请输入一个正整数(输入0退出循环):");
try {
n = sc.nextInt();
} catch (Exception e) {
System.out.println("错误的类型!");
sc.nextLine();
continue;
}
if (n == 0) {
break;
}
System.out.printf("%d! = %d\n", n, fact(n));
} System.out.println("再见!");
} private static long fact(int n) {
if (n < 0) {
System.out.println("错误的数值范围!");
return -1;
} else {
return factorial(n);
}
} private static long factorial(int n) {
if (n == 1) {
return 1;
} else {
return n * factorial(--n);
}
}
}

Java递归实现阶乘

最新文章

  1. 我的MYSQL学习心得(十四) 备份和恢复
  2. 详解:基于WEB API实现批量文件由一个服务器同步快速传输到其它多个服务器功能
  3. 破解myEclipse
  4. export a java project to runable jar
  5. NoSQL 简介及什么是AICD
  6. AU版有锁机的福利,704越狱彻底解决+86问题,完美IM/FT,重启不掉APN设置
  7. spring_150802_resource
  8. BNUOJ-26579 Bread Sorting YY
  9. CCI_chapter 4 trees and Grapths
  10. css中滚动条样式的设置
  11. Kibana插件sentinl使用教程
  12. Django数据库--事务及事务回滚
  13. 与eslint有关的规范
  14. Linux:Day24(下) samba
  15. kafka 流式计算
  16. Samba简介与配置(匿名&amp;本地用户验证)
  17. PHP如何获取本周周二的日期?
  18. HighCharts终极版本
  19. kerberos认证协议分析
  20. 对mysql联合索引中的字段进行合理排序

热门文章

  1. JVM调优YoungGC
  2. golang module 在 spacemcs 中的配置
  3. 物联网架构成长之路(39)-Bladex开发框架环境搭建
  4. Sitecore 8.2 渠道简介
  5. JDBC与Druid简单介绍及Druid与MyBatis连接数据库
  6. F#周报2019年第23期
  7. 禁止直接通过IP访问---&gt;nginx
  8. 绑定 Binding Path=.,Binding.,Binding Source={StaticResource ResourceKey=&quot;Hello&quot;} xmlns:sys=&quot;clr-namespace:System;assembly=mscorlib&quot;
  9. SQLMap常用教程
  10. 获得用户的真实ip HTTP_X_FORWARDED_FOR