2 qq 22919713 qq_22919713 于 2016.09.17 12:38 提问

初学循环不会啊。。。。求回复

输入一个大于1的数,求1和这个数的阶乘用三种循环语句 for ,while , do...while

6个回答

Marksinoberg
Marksinoberg   Ds   Rxr 2016.09.17 13:27
已采纳

Java 版本的来了。

for

int result = 1;
 for(int i =1;i<=number;i++) {
     result*=i
 }
 System.out.println("Result=" + result);

while

int result = 1;
int counter=1;
while(counter<=number){
    result*=counter;
    counter++;
}
System.out.println("Result=" + result);

do···while

int result = 1;
int counter = 1;
do{
result*=counter;
counter++;
}while(counter<=number);

s896500398
s896500398   2016.09.17 12:52

public static void main(String[] args) {
int a=1;
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个数:");
int num=sc.nextInt();
for(int i=1;i<=num;i++){
a=a*i;
}
System.out.println(a);

        }
guwei4037
guwei4037   Ds   Rxr 2016.09.17 13:01

阶乘就是n!=n*(n-1)*(n-2)*...*1 ,可以从1开始每次乘以大于当前数的值,保存下来继续乘以大于当前的值,一直到n为止。
这里面有详细代码:http://ly5633.iteye.com/blog/1219408

guwei4037
guwei4037 这里有c语言版的详细步骤可以参考:http://jingyan.baidu.com/article/fcb5aff7ac032aedaa4a71ad.html
一年多之前 回复
MoMingQiMiaoDeLi
MoMingQiMiaoDeLi   2016.09.17 14:01

毛毛就好了图片说明图片说明图片说明

MoMingQiMiaoDeLi
MoMingQiMiaoDeLi   2016.09.17 14:01

毛毛就好了图片说明图片说明图片说明图片说明

tonnyMT
tonnyMT   2016.09.17 15:32

Golang版本来了
for循环

    for item := 0; item < 3; item++{
    fmt.println("item =", item )
}
    item := 0
    for {
        if item >= 3 {
            break
        }
        fmt.Println("item = ", item)
        item++
    }
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!