当前位置: 首页 > news >正文

网站logo素材团队logo标志设计

网站logo素材,团队logo标志设计,透明水印logo在线制作,网站建设的销售术语对一个编程新手来说#xff0c;最先知道了解的莫过于代码执行的三种结构#xff0c;顺序结构、循环结构和选择结构。 其中个人认为相对难以理解的是循环结构#xff0c;而针对循环结构的练习题最多的就是循环画出一种简单图形#xff0c;比如三角形。 当初我在学习写三角形…对一个编程新手来说最先知道了解的莫过于代码执行的三种结构顺序结构、循环结构和选择结构。 其中个人认为相对难以理解的是循环结构而针对循环结构的练习题最多的就是循环画出一种简单图形比如三角形。 当初我在学习写三角形的时候纯粹是背下来的。那时候去网上找这种打印的资料都是直接给一个结果而对于新手而言最重要的分析过程却没有。 这导致很多新手在懵懵懂懂的时候就学过去了。 个人以为能够更早的理解并调试循环结构新手们会更喜欢调试复杂的代码。因此拙文就诞生了。 一、如何打印一个或多行 * 号。 对于新手而言掌握打印一个 * 号都是一件极为困难的事情。事实上打印一个 * 号和打印一个任何教程上都有的 HelloWorld 没有本质的区别。 public class PrintTest {public static void main(String[] args) {System.out.println(*);} } 对于打印多个 * 号的。有两种方式一种是 再次写一遍打印代码二是使用循环条件去控制多次打印。 public class PrintTest {public static void main(String[] args) {System.out.println(*);System.out.println(*);System.out.println(*);} } public class PrintTest {public static void main(String[] args) {for (int i 0; i 3; i) {System.out.println(*);}} } 这两种打印方式的结果是一样的。在调试代码时会发现第一种是顺序结构执行即执行上一句代码后执行下一句代码第二种是循环结构执行当通过循环条件判断时会执行循环体里的代码然后再次进行循环条件的判断当循环条件不满足时循环结束。 二、如何打印单行多个 * 号。 public class PrintTest {public static void main(String[] args) {for (int i 0; i 3; i) {System.out.print(*);}} } 这段代码与之前的那个多行 * 号的 代码只有一点区别。那就是 循环体中  System.out.print() 和 System.out.println()的区别。 为了说明这个的区别必须先理解面向对象语言的基本概念对象本身。首先 System是一个对象out是System对象的一个成员属性它也是一个对象print()和println()是out的两个方法这两个方法均接收一个String类型的对象作为参数也就是 *。这两个方法在打印时有些区别print()直接输出println()先输出然后再输出一个换行符也就是说尽管我们只写了 *但实际上输出的不只 *是因为多输出的那个换行符导致我们所看到的结果的不同。为了能够清晰的说明这一点我们可以手动给print()里的参数加上一个换行符也就是 *\n。 public class PrintTest {public static void main(String[] args) {for (int i 0; i 3; i) {System.out.print(*\n);}} } 这段代码的打印与之前的打印就一样了。 三、如何打印多行每行都有多个 * 号。 简单的做法就是结合之前的代码。 public class PrintTest {public static void main(String[] args) {for (int i 0; i 3; i) {System.out.print(*);}System.out.println();for (int i 0; i 3; i) {System.out.print(*);}System.out.println();for (int i 0; i 3; i) {System.out.print(*);}System.out.println();} } 以上的代码为了打印多行首先必须打印单行为了打印多个首先必须循环打印在循环结束后打印一个换行。按照之前的循环逻辑可以将重复代码转化成循环结构。 public class PrintTest {public static void main(String[] args) {for (int i 0; i 3; i) {for (int i 0; i 3; i) {System.out.print(*);}System.out.println();}} } 当我们使用如上的代码时会发现编译报错。 Error:(6, 22) java: 已在方法 main(java.lang.String[])中定义了变量 i 这句话的意思是重复定义了相同名称的变量i。这就意味着如果我们想转化成循环结构必须让这两个变量名不同于是引入j。 public class PrintTest {public static void main(String[] args) {for (int i 0; i 3; i) {for (int j 0; j 3; j) {System.out.print(*);}System.out.println();}} } 这样我们便可打印出我们想要的结果。 四、如何打印多行、每行的 * 号数量等于行号。 这时我们就需要思考如何让每行的 * 号数量等于行号。我们可以先简单的列一下。行1* 1行2, * 2行3, *3。那么我们是如何控制每一行的输出内容呢实际上我们是靠变量j的判断条件如果j的判断条件变的与行号有关那么就可以做到了。而行号是由变量i控制的因此我们便有了。 public class PrintTest {public static void main(String[] args) {for (int i 0; i 3; i) {for (int j 0; j i; j) {System.out.print(*);}System.out.println();}} } 五、 如何打印多行、每行的 * 号数量等于行号但每行开始打印的时机不同。 之前的代码打印出来的结果是每行开始的时候就开始打印那么如何让它不在开始的时候打印而是让它往右偏移一下呢。 我们可以引入一个偏移量这个变量offset。若在打印 * 号之前判断这个偏移量如果到达需要打印的时机那就打印那如何没有到达呢 实际上没有到达时并非是没有字符只是这个字符是一个空白符 。这样才能出现这种偏移的效果。 可是这个偏移量是如何定义的呢我们还是只能先列一下。 行 1 星 1偏移 2 行2 星 2 偏移 1 行3 星 3偏移0。看出来了没就是说偏移量和行号正好是反过来的。而且 行号 偏移量 恒等于 3。因此为了定义这个偏移量必须还要引入一个概念即我们希望我们打印的 * 号到底有多少行。我们可以引入总行数这个变量line给它定义为3偏移量为 line - 行号i 1。我们可以一同引入我们希望打印的 * 每行到底最多有多少个 columns给它定义为3。 注尽管一直以来是以行数来做说明但其实这个偏移量是由columns来控制行数与星数相同。 public class PrintTest {public static void main(String[] args) {int line 3;int columns 3;for (int i 0; i line; i) {int offset line - (i 1);for (int j 0; j columns; j) {if (j offset) {System.out.print( );} else {System.out.print(*);}}System.out.println();}} } 六、如何打印一个标准的正三角形。 上一段代码打印的虽然有偏移但并非是我们所希望得到的一个标准的正三角形。那么就必须来分析我们目前所达到的效果和我们所预期的有什么样的差异。这些差异又如何通过调整代码来弥补。 为了更加明显的展示差异我将最大行数和最大列数均定义为9。 ************************************ ********* 至少我们能看出来的是我们只偏移了左边而实际上三角形也需要偏移右边。那么我们可以将偏移量分为左偏移和右偏移两个变量。我们同样需要列一下现在的行关系。行1左偏移 4 右偏移 4 星 1行2 左偏移3 右偏移4, 星2行3左偏移3右偏移3星3... 那么有 loffset 和 roffset 为 列数columns - 星数line / 2 。当小于左偏移量和大于等于列数 - 右偏移量时打印 空字符。 public class PrintTest {public static void main(String[] args) {int line 9;int columns 9;for (int i 0; i line; i) {int loffset ( columns - (i 1 ) ) / 2;int roffset loffset;for (int j 0; j columns; j) {if (j loffset) {System.out.print( );} else if (j (columns - roffset)) {System.out.print( );} else {System.out.print(*);}}System.out.println();}} } 效果为 * *** *** ***** ***** ******* ******* ********* ********* 上述代码并没有产生我们所想要的效果。其原因在于计算偏移量时无法保证左偏移量和右偏移量始终为整数因列数columns - 星数line 存在 奇数尽管代码在执行过程中计算为整数但这会导致计算不精确。 简单的做法就是不打印那些存在奇数的行也就是说在循环时若发现列数columns - 星数line 为奇数则不打印该行。 判断奇数的方法为 求余如果余数为0则为偶数执行循环如果余数为1则跳过。 public class PrintTest {public static void main(String[] args) {int line 9;int columns 9;for (int i 0; i line; i) {int loffset;int roffset;int odd (columns - (i 1 )) % 2;if (odd 0) {loffset ( columns - (i 1 ) ) / 2;roffset loffset;for (int j 0; j columns; j) {if (j loffset) {System.out.print( );} else if (j (columns - roffset)) {System.out.print( );} else {System.out.print(*);}}System.out.println();} else {continue;}}} } 打印效果如下 * *** ***** ******* *********  转载于:https://www.cnblogs.com/zixiaoguan/p/7457216.html
http://www.pierceye.com/news/330244/

相关文章:

  • 解放碑电子商务网站建设网站建设英文如何表达
  • 长春好的做网站公司有哪些网站建设标准
  • 公司网站首页大图怎么做台州网站制作定制
  • 网站建设公司软件开发浅谈网站建设开发
  • 松江网站开发培训课程海外域名注册商
  • 智慧景区网站服务建设线下课程seo
  • 做3个网站需要多大的服务器做地铁建设的公司网站
  • 深圳app网站建设哪家好广西桂林
  • 网站开发及上线过程网站建设备案策划书
  • 杭州九鸿科技网站开发网站模板 素材
  • 网站建设网站软件有哪些wordpress如何输入拼音
  • 昆山网站建设哪家便宜简单的模板网站
  • 做图标得英文网站wordpress写代码插件
  • 网站网页设计案例wordprees可以做棋类网站吗
  • 天河区门户网站官网小学生一分钟新闻播报
  • 漯河网站建设lhwzzz网络服务器机柜
  • 有口碑的武进网站建设国内做房车游网站
  • 山东省城乡住房和城乡建设厅网站济南网站建设wuliankj
  • 网站首页跳出弹窗wordpress远程后台设置
  • 免费信息网站建设平台影响网站排名的因素 权重
  • 做房产网站接不到电话湖北网站建设平台
  • 厦门国外网站建设公司排名上海自贸区注册公司优惠政策
  • 网站建设的公司实习做什么成都住建局官网住建智慧建管
  • 建一个免费看电影的网站犯法不国家企业信用信息没有网站怎么做
  • 长春网站vantage wordpress
  • 帝国cms如何做网站地图自己做的网站还要买域名么
  • 网站建设与维护税率网络营销案例及视频
  • 网站建设 繁体精品课网站制作
  • 常州 招网站开发seo的名词解释
  • 二级域名网站seo竞价网站建设