以下是Java程序:

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.print("请输入n:");
        int n = input.nextInt();

        int sum = 0;
        String s = "";
        for (int i = 1; i <= n; i++) {
            int subSum = 0;
            for (int j = 1; j <= i; j++) {
                subSum += j;
                s += j + "+";
            }
            s = s.substring(0, s.length() - 1); // 去掉最后一个“+”
            sum += subSum;
            System.out.printf("%-15s= %2d%n", s, subSum);
        }
        System.out.println("------------------------");
        System.out.printf("%-15s= %2d%n", "s", sum);
    }
}

运行结果:

请输入n:5
1              =  1
1+2            =  3
1+2+3          =  6
1+2+3+4        = 10
1+2+3+4+5      = 15
------------------------
s              = 35

程序的思路是,外层循环控制求和的次数,内层循环求每次的子和。同时,使用字符串变量s记录每次的子和表达式,并在每次内层循环后输出子和和表达式。最后输出总和。字符串的格式化输出使用了String.format()方法,其中%n表示换行符,%-15s表示左对齐且总长度为15个字符的字符串占位符

用java编写一个程序从键盘输入n求s=1+1+2+1+2+3++1+2+3++n帮我以梯形输出出来

原文地址: https://www.cveoy.top/t/topic/cJEc 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录