章节
问答
课签
笔记
评论
占位
占位

C#循环结构之嵌套循环

在一个循环体中包含另一个循环,称为“嵌套循环”。当2个循环嵌套的时候,外层循环体执行一次,内层循环体执行 n 次( n 是内层循环的次数)。请看下面的例子:

运行结果:

比较代码和运行结果,我们发现,内层循环体执行 3 次,外层循环体执行 1 次。这就有点像钟表上的时针和分针——时针走一格,分针走一圈。

下面一段代码打印了一个矩形:

运行效果:

思考一下,哪一个变量决定了每一行的循环次数, x 还是 y ?

任务

右边代码打印了一个矩形,请修改代码,使它打印三角形:

?不会了怎么办

其实,决定每一行打印个字符的变量就是x,当内层循环条件为 x<=7 时,每一行固定打印 7 个字符;如果改为 x<=y ,那么打印的字符数就会随着行数( y )增长。

正确的解法:把第 13 行代码改为:

for (int x = 1; x <= y; x++)
||
1
2
using System;
using System
    .Collection
    s.Generic;
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
提交
重置代码
||

请验证,完成请求

由于请求次数过多,请先验证,完成再次请求

加群二维码

打开微信扫码自动绑定

您还未绑定服务号

绑定后可得到

  • · 粉丝专属优惠福利
  • · 大咖直播交流干货
  • · 课程更新,问题答复提醒
  • · 账号支付安全提醒

收藏课程后,能更快找到我哦~

使用 Ctrl+D 可将课程添加到书签

邀请您关注公众号
关注后,及时获悉本课程动态

举报

0/150
提交
取消
全部 精华 我要发布

最新回答 / ecnevorPaL
Console.WriteLine();<...code...>下载视频          

最新回答 / qq_认真且怂_gAFRSY
<...图片...>是的。

已采纳回答 / 和你熟
  for (int a = 0; a < 10; a++)            {                for (int b = 0; b < 10; b++)                {                    if ((a != 0 && a != 9) && (b != 0 && b != 9))                        Console.Write(' ');             ...

已采纳回答 / 阔狗阔落
第一个for循环后面少了一个{,所以下面换行的语句就没起到作用static void Main(string[] args)  {           for (int y = 1; y <= 3; y++){                for (int x = 1; x <= y+2; x++) {                    Console.Write(x);                }                Console.WriteLine();      ...

已采纳回答 / 西窗丶
按我的理解来就是在原来的代码里加了一个判断条件原来的代码是不管外层循环执行多少次,内层循环都会执行固定的次数而在加了if判断以后,内层循环执行的次数就只能小于等于外层循环执行的次数也就是当外循环执行了第一次时,内循环也只能执行一次,输出1当外循环执行第二次时,内循环便执行两次,输出1 2 以此类推,就会输出最后那个三角形

最新回答 / 慕哥1330380
估计是这个教学程序的问题,只要答案跟内容有一处一致好像就会通过

最赞回答 / XSJC
改一个变量就行,只需要一个字母哦。

已采纳回答 / xms_dqq
 for(int i=0;i<7;i++){          for(int j=0;j<7;j++){              if(i+j==6 || i==j){                     Console.Write("O");                }else{                    Console.Write(".");                }            }            Console.WriteLine(""...

已采纳回答 / qq_知守_1
0.0数字呈矩形状排列,不是真图形......

最赞回答 / 慕丝3378769
可以改但是得先声明变量xstatic void Main(string[] args)        {            int x = 1            for (int y = 1; y <= 7; y++)            {                while(x <= y)                {                    Console.Write(x);                    x++:                ...

最新回答 / 睿智狂人
namespace Test{    class Program    {        static void Main(string[] args)        {            for (int y = 1; y <= 7; y++)            {                for (int x = 1; x <= 7; x++)                {                    if(x <= y)                 ...

已采纳回答 / 睿智狂人
namespace Test{    class Program    {        static void Main(string[] args)        {            for (int y = 1; y <= 7; y++)            {                for (int x = 1; x <= 7; x++)                {                    if(x <= y)                 ...

已采纳回答 / qq_书生_20
<...code...>

最新回答 / 慕粉4364288
 static void Main(string[] args)        {            for (int y = 1; y <= 7; y++)            {                for (int x = 1; x <= y; x++)                {                    Console.Write(x);                }                Console.WriteLine();    ...
全部 我要发布
最热 最新
只看我的

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

账号登录 验证码登录

遇到问题
忘记密码

代码语言