Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我试图让这个循环工作,但我可以';T_C# - Fatal编程技术网

C# 我试图让这个循环工作,但我可以';T

C# 我试图让这个循环工作,但我可以';T,c#,C#,我试图制作一个程序来显示用户输入整数的最大值,我真的不明白为什么它不起作用 public class Program { public static void Main() { int i = 0; int rep = int.Parse(Console.ReadLine()); int hi = int.Parse(Console.ReadLine()); int big = 0; for( i

我试图制作一个程序来显示用户输入整数的最大值,我真的不明白为什么它不起作用

public class Program
{
    public static void Main()
    {
        int i  = 0;
        int rep = int.Parse(Console.ReadLine());
        int hi = int.Parse(Console.ReadLine());
        int big = 0;
        for( i = 0; i < rep; i++)
        {
            if(hi > big)
            {
                big = hi;
            }

        }
        Console.WriteLine(big);
    }
}
公共类程序
{
公共静态void Main()
{
int i=0;
int rep=int.Parse(Console.ReadLine());
int hi=int.Parse(Console.ReadLine());
int大=0;
对于(i=0;i大)
{
大=高;
}
}
控制台。WriteLine(大);
}
}

如果您希望用户输入
rep
整数的数量,然后找到最大的整数,那么这可能适用于您:

公共类程序
{
公共静态void Main()
{
int rep=int.Parse(Console.ReadLine());
int大=0;
对于(int i=0;i大)
{
大=高;
}
}
控制台。WriteLine(大);
}
}
假设你的输入是自然数。否则,您可能需要替换

intbig=0;

int big=int.MinValue;

我被修改为您的
控制台。writeline
已脱离循环。但是

public class Program
{
public static void Main()
{
    int i  = 0;
    int rep = int.Parse(Console.ReadLine());
    int hi = int.Parse(Console.ReadLine());
    int big = 0;
    for( i = 0; i < rep; i++)
    {
        if(hi > big)
        {
            big = hi;
            Console.WriteLine(big);
        }

    }

}
}
公共类程序
{
公共静态void Main()
{
int i=0;
int rep=int.Parse(Console.ReadLine());
int hi=int.Parse(Console.ReadLine());
int大=0;
对于(i=0;i大)
{
大=高;
控制台。WriteLine(大);
}
}
}
}

但此代码正在第一个循环中将
hi
的值分配给
big
。然后进入第二个循环,现在它不会满足
if(hi>big)
条件,因为hi和big现在相等。循环结束。

循环看起来不错,但你只有2个数字,rep和hi。重复测试相同的数字没有任何区别。。所以你不需要一个循环,你的目标是什么?用户应该输入多少个整数?
rep
是期望的整数数吗?。。。或者保留循环,读取循环中的
hi
,并添加一个条件以离开循环并显示结果。如果
rep
是预期的整数数,则放入
int hi=int.Parse(Console.ReadLine())在if子句之前的for循环中。谢谢您的回答,但是Console.WriteLine在它应该所在的位置,因为“big”是我希望在所有过程完成后显示的数字。另外,我的代码中的第一个循环不是for循环吗?还是我误解了你的评论?