网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
三、题目
题目描述:
KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的正方形图案。
输入
多组输入,一个整数(1~20),表示正方形的长度,也表示输出行数。
输出
针对每行输入,输出用“*”组成的对应边长的正方形,每个“*”后面有一个空格。
样例
输入 :4
输出 :* * * *
* * * *
* * * *
* * * *
输入:5
输出:* * * * *
* * * * *
* * * * *
* * * * *
* * * * *
四、题目分析
首先第一个我给大家重新画一个更加形象的图来观察一下
我拿第一个样例给大家讲解,通过上图我们可以发现,想要用循环打印出此图,我们可以从,行数和列数来进行分析,可以用一个循环来控制行数,一个循环来控制列数。
(1)第一个循环用来控制行数
for (int i = 1; i <= 4; i++) // 用来控制行数,此时有4行,就循环4次
(2)第二个循环需要嵌套在第一个循环里来控制列数,例如:当 i=1是表示进入**第一行,**之后开始第二个循环表示:第一行的4列是如何表达的。随后第二行、第三行、第四行同理
for (int i = 1; i <= 4; i++) //控制行数
{
for (int j = 1; j <= 4; j++) //控制列数
{
}
}
(3)按照题意,在第二个循环中加入**” * “,例如:当 i=1时,循环 j=1~4 表示:第一行的1到4列每一列打印一个” * “ 就会出现" * * * * "的图案在第一列,**其他行同理。
for (int i = 1; i <= 4; i++) //控制行数
{
for (int j = 1; j <= 4; j++) //控制列数
{
printf("* "); // 在第 i 行的第 j 列中打印一个"* "
}
printf("\n"); // 每一行打印完成后需要换行
}
五、AC参考代码
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
tps://bbs.csdn.net/topics/618668825)**
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!