Topic: 求助输入输出问题

  Print this page

1.求助输入输出问题 Copy to clipboard
Posted by: needd
Posted on: 2005-10-23 23:36

目的是
不停读取字母直到q的时候结束程序,

import java.io.*;
public class test{
  public static void main(String agrs[])throws IOException{
    char a='a';
    
    do
    {
      a=(char)System.in.read();
    }while(a=='q');
    
    System.exit(0);
    }
}

为何以上程序无法实现???

2.Re:求助输入输出问题 [Re: needd] Copy to clipboard
Posted by: hxz5830
Posted on: 2005-10-24 09:13

needd wrote:
目的是
不停读取字母直到q的时候结束程序,

import java.io.*;
public class test{//首字母大写
  public static void main(String agrs[])throws IOException{
    char a='a';
    
    do
    {
      a=(char)System.in.read();
    }while(a=='q');//while(a!='q');
    
    System.exit(0);
    }
}


try to do

3.Re:求助输入输出问题 [Re: needd] Copy to clipboard
Posted by: fufejwq520
Posted on: 2005-10-24 10:50

到q的时候不能结束啊

4.Re:求助输入输出问题 [Re: needd] Copy to clipboard
Posted by: JavaandC
Posted on: 2005-10-24 12:33

import java.io.*;
public class test{
public static void main(String agrs[])throws IOException{
char a='a';

do
{
a=(char)System.in.read();
}while(a!='q'); //注意:这里不能写成while(a=='q');

System.exit(0);
}
}

这样读到q的时候,就会自动退出循环结束。

5.Re:求助输入输出问题 [Re: needd] Copy to clipboard
Posted by: needd
Posted on: 2005-10-24 13:06

确实如此
谢各位帮忙

再问一下,如果写成==是什么意思?

6.Re:求助输入输出问题 [Re: needd] Copy to clipboard
Posted by: bluecrystal
Posted on: 2005-10-24 13:43

needd wrote:
确实如此
谢各位帮忙

再问一下,如果写成==是什么意思?


== 就是逻辑相等的意思
= 是赋值运算符

一定要区分
Smile

7.Re:求助输入输出问题 [Re: needd] Copy to clipboard
Posted by: needd
Posted on: 2005-10-24 14:40

斑竹,我意思是while(a=='q')程序流程是怎么回事???
程序是怎么走的?

8.Re:求助输入输出问题 [Re: needd] Copy to clipboard
Posted by: Jcat
Posted on: 2005-10-24 15:14

1. while循环是(包括那三种循环都是):当判断表达式为true是继续循环,为false时跳出循环。
2.a=='q'当你输入的是非q时,结果是false,跳出循环。

do
{
a=(char)System.in.read();
System.out.print( a ); //加一句输出,你就能体会程序是怎么走的了
}while(a=='q');

9.Re:求助输入输出问题 [Re: needd] Copy to clipboard
Posted by: leiqlion
Posted on: 2005-10-24 21:14

当你的输入为q时,程序就循环执行,否则就要退出!

10.Re:求助输入输出问题 [Re: needd] Copy to clipboard
Posted by: needd
Posted on: 2005-10-24 22:33

明白,谢了

11.Re:求助输入输出问题 [Re: needd] Copy to clipboard
Posted by: q_yuan
Posted on: 2005-10-24 23:00

有意思的

12.Re:求助输入输出问题 [Re: needd] Copy to clipboard
Posted by: q_yuan
Posted on: 2005-10-24 23:02

[iframe]有意思的[/iframe]

13.Re:求助输入输出问题 [Re: needd] Copy to clipboard
Posted by: q_yuan
Posted on: 2005-10-24 23:05

[color = #000000]有意思的[/color]

14.Re:求助输入输出问题 [Re: JavaandC] Copy to clipboard
Posted by: wslss007
Posted on: 2005-10-25 12:39

JavaandC wrote:
import java.io.*;
public class test{
public static void main(String agrs[])throws IOException{
char a='a';

do
{
a=(char)System.in.read();
}while(a!='q'); //注意:这里不能写成while(a=='q');

System.exit(0);
}
}

这样读到q的时候,就会自动退出循环结束。


这位兄弟有错,应该改成while(a='q'),而且后面没有;但是我这样运行了还是有错误,报错如下
d:\JCREAT~1\MyProjects\hi.java:11: 需要 ';'
System.exit(0)
^
1 错误
可我明明在System.exit(0)后面加了;奇怪

15.Re:求助输入输出问题 [Re: needd] Copy to clipboard
Posted by: JavaandC
Posted on: 2005-10-26 12:53

to "wslss007":

我写的程序根本没有错误,希望你再看看书应该怎么写。

下面还是那个程序,我用Eclipse运行了很多遍,根本没有错误。

import java.io.*;
public class test{
public static void main(String agrs[])throws IOException{
char a='a';

do
{
a=(char)System.in.read();
}while(a!='q'); //注意:这里不能写成while(a=='q');

System.exit(0);
}
}

16.Re:求助输入输出问题 [Re: needd] Copy to clipboard
Posted by: revo1021
Posted on: 2005-10-26 15:25

没有错误。。。

17.Re:求助输入输出问题 [Re: needd] Copy to clipboard
Posted by: hualee
Posted on: 2005-10-30 15:37

我认为这是基本功的问题,要搞清楚do while 语句是先做然后再判断的。对于前面的例子是先给a赋值,然后做一个判断,看是否a不等于q,如果是,则再做上面的do否则下来做退出动作。流程是do if y->do/n->next.
如果是a='q'的话,你按照流程看看

18.Re:求助输入输出问题 [Re: needd] Copy to clipboard
Posted by: wslss007
Posted on: 2005-10-31 12:44

明白了,朋友,不好意思,看错了。


   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923