黑马程序员技术交流社区

标题: 帮我看看是怎么回事,程序那里出错了 [打印本页]

作者: 19960812    时间: 2016-3-20 00:01
标题: 帮我看看是怎么回事,程序那里出错了
//求出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;
                }
作者: 啊海    时间: 2016-3-20 00:08
参数问题吧
作者: sxuing    时间: 2016-3-20 00:15
return even-odd;返回语句在for循环外面;还有你括号没匹配够,可能你没粘贴全,你比对下
作者: debuggerx01    时间: 2016-3-20 14:07
编译的时候提示缺少返回,所以你就应该想到是不是return位置不对了,等何况编译工具还会定位错误代码的行号……哪怕一开始看不懂编译信息,和你的代码一块贴上来让别人看也是好的啊。。
作者: q6619866    时间: 2016-3-20 14:25
  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. }
复制代码
给你修改后的代码,返回值位置不对,还有一点就是你的代码太丑了,复制饭后黏贴各种少大括号,

作者: zhoubinjian    时间: 2016-3-20 14:53
类的中括号少一半,   return even-odd;在for循环外面,因为for循环里面是算even和odd的值,算好之后才相减




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2