黑马程序员技术交流社区

标题: 关于for的循环语句 [打印本页]

作者: 雷丹    时间: 2013-10-24 15:31
标题: 关于for的循环语句
import java.util.Scanner;
import java.math.BigInteger;
public class T5
{
public static void main(String[] args)
{
int a;
int b=1;
System.out.println("请输入要求阶乘的数:");
Scanner sc=new Scanner(System.in);
a=sc.nextInt();
BigInteger d=BigInteger.valueOf(1);
do
{
d=d.multiply(BigInteger.valueOf(b));
b++;
}while(b<=a);
System.out.println("所求的数的阶乘是:"+d);
}
}
求阶乘问题用do-while和while语句会用,但是用for的话该怎么写?我是卡在for(a;b;c)这里不会,我知道a是初始语句,b是跳出循环的条件语句,c是增量语句,但初始的赋值的语句多了怎么办?
作者: 阿里策    时间: 2013-10-24 19:44
  1. import java.util.*;
  2. class Test
  3. {
  4.         public static void main(String[] args)
  5.         {
  6.                 int sum = 1;
  7.                 System.out.println("请输入要求阶乘的数:");
  8.                 Scanner sc=new Scanner(System.in);
  9.                  int a=sc.nextInt();
  10.                 System.out.println(a);
  11.                 //System.out.println(sc);
  12.                 for(int x=1;x<=a;x++)
  13.                 {
  14.                         sum = sum*x;
  15.                 }
  16.                 System.out.println(sum);
  17.         }
  18. }
复制代码

作者: 乔兵    时间: 2013-10-26 14:20
楼主你好,如果问题已解决请将帖子状态修改为提问结束,

如果未解决请继续提问,谢谢合作

修改方法请看解释帖:http://bbs.itheima.com/thread-89313-1-1.html
作者: 麦子    时间: 2013-10-26 15:10
一针见血地回答你得问题
int  product=1;
for(int i=a;i>0;i--)
{   
     product*=i;
     i--;
}
syso("阶乘为:"+product);

哥么基础还是很重要的哦
好好学习,不懂得可以问我哦
作者: 赵许星    时间: 2013-10-27 13:36
楼上的两个都为正解,同样给补充一个小知识,死循环的两种写法:while(1){};for(;;){},欧了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2