从锦囊妙计想到的18–屏幕输出顺序和显示

  categories:儿童计算机  author:

这次真的很久没写东西了, 今天写点东西

前面说了很多编程的事情, 今天写点特别的东西, 是非常基础的, 但是却是非常重要, 同时也是很多计算机人容易忽略的!

一。 显示器和键盘的介绍

如下图

相信上面的 图片, 和图片里面的内容大家都能理解。

大家若是有用过电脑的人, 大家都知道。

看下面一张图

我们在键盘输入东西屏幕会显示, 这个过程可以叫做回显,  显示顺序是 

从上到下,   一行一行进行显示

 

 

在如下图, 看一行内的情况

我们从这个图片里面看到, 显示  是

一行内  先显示左边的, 然后向右进行

 

 

在如下图

这一行输入完成后, 键入enter后, 换行, 这个时候根据情况进行处理了。 这里是个命令行窗口因此, 键入enter会把输入作为命令的

 

用一句不太严格的话总结一下, 这个显示过程就是:

 

像水流一样, 从,    流动输出, 直到遇到 让他换行的东西, 他就 从上一行换到了, 下一行, 并且仍然是 从左向右 流动输出, 直到遇到 换行, 直到屏幕都满了, 然后屏幕开始向上滚动!

 

 

看似简单要牢记, 否则后面做题你不会!!!

 

二。 了解一下 程序输出的情况

如下图

代码是:   System.out.print(“123456789″);

通过上面, 我们要了解到

1. 一个黑色的窗口, 同eclipse中的白色控台窗口是 等效的, 就像同一个人 有时候穿了黑色的衣服, 有时候穿了白色的衣服。但是功能还是一样的。

2. System.out   就代表   黑色或者 白色的窗口(就是显示屏

3. print 是打印的意思, 其实就是输出

这个语句下去就是, 在  显示器上 输出一个123456789

 

三 程序换行

一)换行的情况

下面看一下程序换行的情况

如上图, 代码变化在

System.out.print(“12\n34567\n89″);

如上图,中红色的部分, 多了一个 “\n”的符号, 那么输出结果在 12后面更换了行, 在67后面也更换了行

看到, 字符串是 从左到右的 流动输出, 然后遇到 \n后, 换行到下一行的最前面, 然后接着从左到右输出34567然后遇到了“\n”然后再次换地方到 行首

 

二)多行输出的情况

如下图

代码如下:

System.out.print(“1\n”);
System.out.print(“12\n”);
System.out.print(“123\n”);
System.out.print(“1234\n”);
System.out.print(“12345\n”);
System.out.print(“123456\n”);

上面程序输出了一个  三角形,  程序关键要是  在1 或者2, 或者3 后面都有一个  \n 的字符, 这样 在屏幕上就会换行

那么上面的  的\n是否可以不写?

 

三)换行输出

如下图效果

代码如下:

System.out.println(“1″);
System.out.println(“12″);
System.out.println(“123″);
System.out.println(“1234″);
System.out.print(“12345\n”);
System.out.println(“123456″);

通过上面可以看到

println  是在输出字符串后面, 自动添加了 \n

四)输出一下有效的图形

下面需要输出如下的图形如何输出?

*
**
***
****
***
**
*

分析一下:

因此我们可以用程序打印字符串 *的方式输出

System.out.println(“*”);   输出一个*  然后换行

System.out.println(“**”);  输出两个** 然后换行

完整的程序如下:


public class testOutput {
 public static void main(String[] args) {
 System.out.println("*");
 System.out.println("**");
 System.out.println("***");
 System.out.println("****");
 System.out.println("***");
 System.out.println("**");
 System.out.println("*");
 }
}

五)在多点的 输出图形!

看下面的图形

*
**
***
****
****
****
****
****
***
**
*

下面的图形, 同上面四)类似, 无非多了几行, 因此可以简单修改一下:

System.out.println(“*”);
System.out.println(“**”);
System.out.println(“***”);
System.out.println(“****”);
System.out.println(“****”);
System.out.println(“****”);
System.out.println(“****”);
System.out.println(“****”);
System.out.println(“***”);
System.out.println(“**”);
System.out.println(“*”);

好了, 那么有了这个基础, 就可以前进一下了!

若是有一万行是否, 要写一万行的输出?  如何解决?

 

四. 重复的工作交给循环去做

一)循环的作用

前面说了,若是输出一万行, 难道还要写一万行代码吗?

先来个简单的

*****
*****
*****

….

….

….
*****

一共输出  100行, 如何写。   若是一行一行写, 就麻烦大了!

代码如下:

public class testOutput {
public static void main(String[] args) {
for(int i = 0; i < 100; i++)
{
System.out.println(“*****”);
}
}
}

看到上面的 一个循环程序, 能解决的问题

那么若是 需要一千行,  仅仅变为  for(int i = 0; i<1000; i++){ ….. }  就可以了。

 

二) 多层循环

上面是个简单的循环

那么下面图形如何输出?

*
**
***
****
*****
******

关键在 每行的递增, 参考代码如下:

public class testOutput {
public static void main(String[] args) {
for(int i = 0; i < 6; i++)
{
for(int j = 0; j < i; j++){
System.out.print(“*”);
}
System.out.println(“*”);
}
}
}

通过2层循环解决 问题!

这个是最好的办法吗?

那么还有什么办法解决这个问题,

更复杂的问题如何解决?

下图如何输出

这个做出来, 才说明上面你明白了!

别看就是一个打印, 估计肯定有不知道如何做的!

用到的源代码:输出

下一篇文章, 说明如何解决这个问题!  并且给出一个  相对标准的思路来解决它!

 



快乐成长 每天进步一点点      京ICP备18032580号-1