对设计师有什么概念:求救!!关于JAVA的问题

来源:百度文库 编辑:中科新闻网 时间:2024/04/28 06:21:57
public class O627_6 {
public static void main(String[] args) {
for(int b=0;b>20;b++)
{
for(int a=0;a<36;a++)
{
char zm = 'A';
zm = (char)(90*Math.random());
if(zm>='A'&&zm<='Z')
{
if(zm!='A'&&zm!='E'&&zm!='I'&&zm!='O'&&zm!='U')
System.out.println(zm);
}
}
}
}
要随即输出20个非元音字母,可是为什么什么都不输出呢?

第三行for(int b=0;b>20;b++) 有问题,应该市小于20吧:for(int b=0;b<20;b++) 。不然该循环只执行一次了,当然有可能什么都没有打出来了。
而且System.out这一行也有问题,应该在后面加一行break,表示生成一个字母以后马上跳出循环才对,不然就会生成不知道多少个字母,完整程序如下:
public class O627_6{
public static void main(String[] args) {
for (int b = 0; b < 20; b++) {
for (int a = 0; a < 36; a++) {
char zm = 'A';
zm = (char) (90 * Math.random());
if (zm >= 'A' && zm <= 'Z') {
if (zm != 'A' && zm != 'E' && zm != 'I' && zm != 'O'
&& zm != 'U'){
System.out.println(zm);
break;
}
}
}
}
}
}

public class O627_6 {
public static void main(String[] args) {
for(int b=0;b>20;b++)
{
for(int a=0;a<36;a++)
{
char zm = 'A';
zm = (char)(90*Math.random());
if(zm>='A'&&zm<='Z')
{
if(zm!='A'&&zm!='E'&&zm!='I'&&zm!='O'&&zm!='U')
System.out.println(zm);
}
}
}
}