A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

//求出1-n之间的偶数和与奇数和的差值
class Demo1{
        public static void main(String[] args)
        {
                 int m = getSub(1000);
                System.out.println(m);                                                       


public static int getSub(int n) {
                int even = 0;
                int odd = 0;
                for (int i = 0; i <= n; i++) {
                        if (i%2 == 0) {
                                even += i;
                        } else {
                                odd += i;
                        }
                        return even-odd;
                }

5 个回复

正序浏览
类的中括号少一半,   return even-odd;在for循环外面,因为for循环里面是算even和odd的值,算好之后才相减
回复 使用道具 举报
  1. class Dome1 {
  2.     public static void main(String[] args) {
  3.                 int m = getSub(1000);
  4.                 System.out.println(m);                                                        
  5.         }

  6.         public static int getSub(int n) {
  7.                 int even = 0;
  8.                 int odd = 0;
  9.                 for (int i = 0; i <= n; i++) {
  10.                                 if (i%2 == 0) {
  11.                                         even += i;
  12.                                 } else {
  13.                                         odd += i;
  14.                                 }
  15.                 }
  16.                 return even-odd;
  17.         }
  18. }
复制代码
给你修改后的代码,返回值位置不对,还有一点就是你的代码太丑了,复制饭后黏贴各种少大括号,
回复 使用道具 举报
编译的时候提示缺少返回,所以你就应该想到是不是return位置不对了,等何况编译工具还会定位错误代码的行号……哪怕一开始看不懂编译信息,和你的代码一块贴上来让别人看也是好的啊。。
回复 使用道具 举报
return even-odd;返回语句在for循环外面;还有你括号没匹配够,可能你没粘贴全,你比对下
回复 使用道具 举报
参数问题吧
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马