黑马程序员技术交流社区

标题: 研究了半天,为什么这条语句不出结果了? [打印本页]

作者: haitianzhilian    时间: 2014-3-6 09:37
标题: 研究了半天,为什么这条语句不出结果了?
刚学java编程,原先学过C,在编译下面语句时怎么不出结果了??
         int i=1, num=0;
         while(i《=100);
         {
              num=num+i;
              i++;
         }
         System.out.println(num);

作者: jkenny    时间: 2014-3-6 09:51
  1.         int i=1,num=0; //这里的;号也错了不能用中文;
  2.          while(i<=100) //你这里符号错了while(i《=100);
  3.          {
  4.               num=num+i;
  5.               i++;
  6.          }
  7.          System.out.println(num);
复制代码

先把Java基础语法看看
作者: 咖啡@糖豆    时间: 2014-3-6 09:52
本帖最后由 咖啡@糖豆 于 2014-3-6 09:57 编辑
  1. public class TestNum
  2. {
  3.            public static void main(String[] args){
  4.                        int i=1, num=0;  //代码都是英文状态下的,语句以";"结束
  5.                        while(i<=100)        //"《" 也是中文状态下的,括弧也是,代码必须是英文状态的
  6.                       {
  7.                                     num=num+i;
  8.                                     i++;
  9.                         }
  10.              System.out.println(num);
  11.              }
  12. }
复制代码

作者: Aimer_WJY    时间: 2014-3-6 09:59
为啥运算结果是99 求指点~
public class Person {
        public static void main(String args)
        {
                        int i=1, num=0;
                        while(i<=100);
                         {
                              num=num+i;
                              i++;
                         }
                        
                         System.out.println("num="+num);
        }

}
运算结果99 改掉循环数 也是99
作者: 何建明    时间: 2014-3-6 20:52
Aimer_WJY 发表于 2014-3-6 09:59
为啥运算结果是99 求指点~
public class Person {
        public static void main(String args)

你这个结果也不是99吧,有两个地方写错了,
main 后面的 括号里 定义应该是  (String [] args)
while 语句后面 多了个 分号 ;


作者: 山治0712    时间: 2014-3-6 20:54
"《"这是个什么东西啊,换成"<"
作者: nicholyx    时间: 2014-3-6 22:11
Aimer_WJY 发表于 2014-3-6 09:59
为啥运算结果是99 求指点~
public class Person {
        public static void main(String args)

  1. public class Person {
  2.         public static void main(String[] args)  //参数类型写错了,原题是String args
  3.         {
  4.                     int i=1, num=0;
  5.                         while(i<=100)  //while循环后多了分号,导致死循环
  6.                          {
  7.                               num=num+i;
  8.                               i++;
  9.                          }
  10.                         
  11.                          System.out.println("num="+num);  //结果是num=5050
  12.         }
  13. }
复制代码

作者: zhouliang    时间: 2014-3-6 22:21
你这个编译都不会通过,在编译时会出现错误提示,while(i《=100);中有不能识别的字符,这就不是个语句,你要注意在编程时,英汉的转换,不能再编程中,出现汉文状态下的字符,这句话应该是while(i<=100);
作者: 小脚印    时间: 2014-3-6 23:31
//所有符号都应是英文的
int i=1, num=0;

         while(i《=100);//while语句后面一般不加分号,如果加分号说明while执行语句为空,当判断条件为真时,就是死循环,永远不会执行下面语句
         {
              num=num+i;
              i++;
         }
         System.out.println(num);




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