for循环练习题

1. (for循环)计算机1+2+3+…+100的和

public class TestNumSum {
    public static void main(String[] args) {
     
        int sum = 0;
        for(int i = 1; i <= 100; i++) {
            sum += i;
        }
        System.out.println(sum);
    }
}
2.(for循环)计算1+3+5+…+99的和
public class TestNumSum1 {
    public static void main(String[] args) {
        
        int sum = 0;
        for(int i = 1; i <= 100;) {
            sum += i;
             i += 2;
        }
        System.out.println(sum);
    }
}
3. (while/do while) 把1.2两题用while循环或do while 循环改写
public class TestNumSum {
    public static void main(String[] args) {
		
		int i = 1;
        int sum = 0;
		
        while(i <= 100) {
            sum += i;
			i++;
        }
        System.out.println(sum);
    }
}
public class TestNumSum1 {
    public static void main(String[] args) {
		
        int i = 1;
        int sum = 0;
        do{
			System.out.println(i);
            sum += i;
             i += 2;
        }while(i < 100);
        System.out.println(sum);
    }
}
4. (for循环) 读入一个小于10的整数n,输出它的阶乘n
import java.util.Scanner;

public class TestMultiply {
	public static void main(String[] args) {
		//需求:控制台输入整数n,计算n的阶乘
		Scanner input = new Scanner(System.in);
		
		System.out.println("请输入一个需要计算阶乘的整数:");
		
		int num = input.nextInt();
		int sum = 1;//int类型的sum,最多只能计算到12的阶乘,12以上的会超过int的取值范围,不精确
		
		for(int i = 1 ; i <= num ; i++){
			
			sum = sum * i;
		}
		
		System.out.println(sum);
		
	}
}
5. (for循环)求100以内所有能被3整除但不能被5整除的数字的和
public class TestNumSum2 {
    public static void main(String[] args) {
        
        int sum = 0;
        
        
       for(int i = 1; i <= 100; i++) {
           if(i % 3 == 0 && i % 5 != 0) {
			   
               sum += i;
           }
       }
	   System.out.println(sum);
    }
}
6. (for循环)编程找出四位整数abcd中满足(ab + cd)(ab +cd) = abcd的数
public class TestNum {
    public static void main(String[] args) {
        
     
		int num1 = 0;
		int num2 = 0;
        
        for(int i = 1000; i <= 9999; i++) {
            
           int a = i / 1000;
           int b = i / 100 % 10;
           int c = i % 100 / 10;
           int d = i % 10;
            
            num1 = a * 10 + b;
            num2 = c * 10 + d;
			
			if((num1 + num2) * (num1 + num2) == i) {
                System.out.println(i);	
			}	 
        }	
    }
}
7.(for循环)输出99乘法表
public class TestMultiplication {
    public static void main(String[] args) {
		
        for(int i = 1; i <= 9; i++) {
			
            for(int j = 1; j <= i; j++) {
				
                System.out.print(i + "*" + j + "=" + i*j + "\t");
				
            }
			System.out.println();
        }
    }
}
8.(for循环)计算2000年1月1日到2008年1月1日相距多少天(注意闰年)
public class TestYears {
    public static void main(String[] args) {
        
        int sum = 0;
		int num = 0;
		
        for(int i = 2000; i <= 2007; i++){
            
            if(i % 400 == 0 || (i % 4 == 0 && i % 100 != 0)) {
               sum += 366;
            }else {
			  num += 365;
			}
		}
		  System.out.println(sum + num);
    }
}
9. (循环)*读入一个整数n,输出如下图形
// 需求:打印等腰三角形

/*
	    *
	   ***
	  *****
	 *******
	*********
   ************
*/
import java.util.Scanner;

public class TestTriangle {
    public static void main(String[] args) {
		
		Scanner input = new Scanner(System.in);
		
		System.out.println("请输入一个整数:");
		
		int rows = input.nextInt();
		
        for(int i = 1; i <= rows; i++) {  //外层控制行数
		
            for(int j = rows - 1; j >= i; j--) { //内层控制列数
			
                System.out.print(" ");
            }
			
			
			for(int k = 1; k <= i * 2 -1; k++) {
				
				System.out.print("*");
				
			}
			
            System.out.println();
        }
    }
}
10. (for循环) 求水仙花数
public class TestNum12 {
    public static void main(String[] args) {
        for(int i = 100; i <= 999; i++) {
            
            int a = i / 100;
            int b = i / 10 % 10;
            int c = i % 10;
            
            if(a * a * a + b * b * b + c * c *c == i) {
                System.out.println("水仙花数:" + i);
            } 
        }
    }
}
展开阅读全文
©️2020 CSDN 皮肤主题: 深蓝海洋 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值