为什么运行出来没有东西char a='上'; int arr[]={1-15}; for (int i = 0; i < 5; i++) { for(int i1=4;i1<=0;i1--){ System.out.println(a); } }
时间: 2023-05-24 21:04:23 浏览: 85
c代码-表达式 sizeof(type) 获取 int 类型的大小
代码中有几个问题导致程序没有输出:
1. 变量i的自增语句i++漏掉了,导致i一直是0,内循环永远不会执行。
2. int arr[]={1-15}这句代码定义了一个长度为1的整型数组,且数组中只有一个元素,值为-14。这个数组在程序中没有被使用。
3. 内循环中的System.out.println(a)语句会输出字符'a',而不是变量a所代表的中文字符'上'。这是因为字符字面量默认是用ASCII码表示的,而ASCII码中没有中文字符。
下面是修改后的代码,可以正确输出5行中文字符'上':
```java
char a ='上';
for (int i = 0; i < 5; i++) {
for (int i1 = 4; i1 >= 0; i1--) {
System.out.print(a);
}
System.out.println();
}
```
修改的内容包括:
1. 把外循环中的i++加上。
2. 删除无用的数组定义语句。
3. 把内循环中的println改为print,避免输出后自动换行。
4. 在外循环结束后增加一句println,使输出的5行字符分别占据一行。
阅读全文