java吧 关注:1,238,115贴子:12,710,457
  • 15回复贴,共1

为什么这样做不行

只看楼主收藏回复

package lianxiyi;
import java.util.Scanner;
public class T5 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println ("请输入一个数repeat");
Scanner input=new Scanner(System.in);
int repeat =input.nextInt();
System.out.println("请输入"+repeat+"组的");
int []a=new int[repeat];
for(int i=1;i<=repeat;i++){
a[i]=input.nextInt();
float sum=0;
int temp=1;
for(int m=1;m<=a[i];m++){
sum=sum+1/m;
temp=temp+2;
}
System.out.print("sum的值为"+sum);
}
}}
sum的值就只能等于1啊 为什么呀


1楼2014-05-10 15:09回复
    for(int m=1;m<=a[i];m++){
    sum=sum+1/m;
    temp=temp+2;
    }
    1/m :m最小是1 ,1/(大于1的值)=0


    2楼2014-05-10 15:27
    收起回复
      你只能从键盘录入一个数


      3楼2014-05-10 15:28
      收起回复
        你这程序想做什么呢?


        IP属地:广东来自手机贴吧4楼2014-05-10 15:44
        回复
          1除以比一大的数永远等于0,明白了么


          来自手机贴吧5楼2014-05-10 15:52
          回复