m0_66406146 2022-01-18 03:39 采纳率: 100%
浏览 65
已结题

java初级编程问题

‎从键盘输入一个正整数n(如果输入数据不符合要求,提醒用户重新输入,直到满足要求为止),求解1-n之间所有奇数的和。请使用循环语句实现

  • 写回答

3条回答 默认 最新

  • Aonzo 2022-01-18 11:47
    关注

    本题属于java比较基础的编程题,建议自己动脑思考,动手实操。
    代码如下:(1-n之间不包括n本身的奇书之和)

    import java.util.Scanner;

    public class question_CSDN {
    /**
    * ‎从键盘输入一个正整数n(如果输入数据不符合要求,提醒用户重新输入,直到满足要求为止). 求解1-n之间所有奇数的和。请使用循环语句实现
    *
    *
    * @param args
    */
    public static void main(String[] args) {
    int sum = 0;
    int count = 1;// 用于判断循环输入是否结束
    Scanner input = new Scanner(System.in);// 在循环体外部创建输入流,只需创建一次!
    System.out.println("请输入一个正整数:");
    do {
    if (input.hasNextInt()) {// 判断输入的数据类型,若正确则执行下面程序
    int n = input.nextInt();
    if (n <= 0) {//n<=0,置count为0,重新输入
    System.out.println("输入错误!请重新输入!");
    count = 0;
    } else {//n为整形且大于零,则继续计算
    for (int i = 0; i < n; i++) {
    if (i % 2 == 1) {// i为奇数
    sum += i;
    }
    }
    }
    } else {// 若输入的数据类型错误,则返回重新输入
    count = 0;
    System.out.println("输入错误!请重新输入!");
    }
    } while (count == 0);
    input.close();//关闭输入流
    System.out.println("1-n之间的奇数之和为"+sum);
    }

    }

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 1月26日
  • 已采纳回答 1月18日
  • 创建了问题 1月18日