请问这样写有问题么?输出正确,但有一次警告

来源:5-8 编程练习

慕仙5026560

2019-03-25 23:09

static void Main(string[] args)

        {

            //声明整型数组,保存一组整数

            int[] num = new int[] { 3,34,43,2,11,19,30,55,20};

            //请完善代码,判断数组中有没有7的整倍数

            for(int i = 0 ; i < num.Length ; i++)

            {

                if(num[i]%7==0)

                {

                Console.Write("有7的整倍数");

                break;

                }

                else

                {

                Console.Write("没有7的整倍数");

                break;

                }

            }

        }


写回答 关注

2回答

  • 蠢哭呀
    2019-03-28 15:23:04
    已采纳

    首先if中不能放

    break;
    这个只是终止循环的。
    
    其次,如果循环里套了if,在if中放入break,是跳出循环。
    
    continue 这个是跳出本次循环的。
    
    int[] num = new int[] { 3,34,43,2,11,19,30,55,20}; 
    //请完善代码,判断数组中有没有7的整倍数
     for (int i = 0; i < num.Length; i++){   
      Console.WriteLine();//换行
          if (num[i] % 7 == 0)    {    
              //跳出本次循环前会打印,       
               Console.Write("有7的整倍数");
                continue;//跳过本次循环
         }
         else    {
             Console.Write("没有7的整倍数");
            continue;
     
        }            
      }
    
    
    ps:另外别人回答你时,你要自己求证下,不要一上来就是质问!
    
    建议遇到问题的解决思路是 上网搜索资料》 代码证明 》 还是不行 》虚心请教
    
    例如你这个问题 搜索 C# if 跳出本次循环


    慕仙5026...

    谢谢你的提醒以及方法,对之前的回复感到抱歉,但本身并没有想要质问的意思,可能是我表达的问题吧。sorrysorry

    2019-03-28 22:23:04

    共 1 条回复 >

  • 慕仰2600257
    2019-03-26 10:56:44

    else中的break删除。否则循环一次就直接退出了。

     //声明整型数组,保存一组整数

                int[] num = new int[] { 3,34,43,2,11,19,30,55,20};

                //请完善代码,判断数组中有没有7的整倍数

                bool y = false;

                foreach(int n in num){

                    if(n%7==0){

                        y = true;

                        break;

                    }

                }

                

                if(y){

                    Console.Write("有7的整数倍");

                } else {

                    Console.Write("没有7的整倍数");

                }


    慕数据844... 回复慕仙5026...

    你这种写法很有问题,数组里虽然有很多个数组元素,但用break,只循环一次就结束了for循环(前面有人说,if不能用break,感觉怪怪的,如果if嵌套在for循环中就可以使用break,if单独不能使用),最后举个栗子,把数组中的元素11改成14,运行结果还是“没有7的整倍数”,说到这应该明白了吧

    2019-09-23 11:49:22

    共 3 条回复 >

C#开发轻松入门

本门课程是C#语言的入门教程,将带你轻松入门.NET开发

254118 学习 · 1459 问题

查看课程

相似问题