C# 为什么c语言的程序不起作用?

C# 为什么c语言的程序不起作用?,c#,C#,我需要检查给定的数字x是否可以被最小的数字整除: int x, a, b, c,min; x = Convert.ToInt32(tbx.Text); a = x / 100; b = (x / 10) % 10; c = x % 10; a = min; if (b < min) b = min; if (c < min) c = min; if ((x % min) = 0) lbl_solution.Text = "number is

我需要检查给定的数字
x
是否可以被最小的数字整除:

int x, a, b, c,min;

x = Convert.ToInt32(tbx.Text);
a = x / 100;
b = (x / 10) % 10;
c = x % 10;
a = min;

if (b < min) 
    b = min;

if (c < min) 
    c = min;

 if ((x % min) = 0)
      lbl_solution.Text = "number is divisible";
 else
      lbl_solution.Text = "number is not divisible";
intx,a,b,c,min;
x=转换为32(tbx.Text);
a=x/100;
b=(x/10)%10;
c=x%10;
a=最小值;
如果(b
如何修复此错误

无法将int隐式转换为bool


听起来问题出在那条线上

(x % min) = 0
x%min
返回一个
int
值,而不是一个变量。例如,它将是
5=0

这意味着在这种情况下,您将得到2个编译时错误

  • 无法将int隐式转换为bool。(因为
    if
    语句需要)
  • 赋值的左侧必须是变量、属性或索引器
强烈怀疑您只是想检查您的
x
除以
min
而无需任何提示。如果是这样,你需要使用而不是喜欢


而且C#编译器不允许您使用未初始化的变量。在您的情况下,您尝试使用
a
min
变量,但不初始化它们。

您的第一个错误在这一行:

if ((x % min) = 0)
您必须像这样使用
=

if ((x % min) == 0)
sekond的错误是:变量
min
未被日化

int x, a, b, c;
int min = 2;

x = Convert.ToInt32(tbx.Text);
a = x / 100;
b = (x / 10) % 10;
c = x % 10;
a = min;

if (b < min) 
    b = min;

if (c < min) 
    c = min;

if ((x % min) == 0)
    lbl_solution.Text = "number is divisible";
else
    lbl_solution.Text = "number is not divisible";
intx,a,b,c;
int min=2;
x=转换为32(tbx.Text);
a=x/100;
b=(x/10)%10;
c=x%10;
a=最小值;
如果(b
非常感谢您的帮助这是我制作的正确代码,谢谢您

        int x, a, b, c, min;
        x = Convert.ToInt32(tbx.Text);
        a = x / 100;
        b = (x / 10) % 10;
        c = x % 10;
        min=a;
        if (b < min) 
        b = min;
        if (c < min) 
        c = min;
        if ((x % min) == 0)
           lbl_solution.Text="number is divisible";
        else
            lbl_solution.Text="number is not divisible";
intx,a,b,c,min;
x=转换为32(tbx.Text);
a=x/100;
b=(x/10)%10;
c=x%10;
min=a;
如果(b
您想实现什么?在IF中,您不会返回true或false。您不想改为
(x%min)==0
?在哪一行您会得到此错误?你能更具体一点吗?请写一个更好的标题。我认为情况并非如此。因为
x%min
返回
int
并且类似于
5=0
,在这种情况下,错误消息应该是
,赋值的左侧必须是变量、属性或索引器
而不是
不能隐式地将int转换为bool
@SonerGönül no。如果使用
(x%min),它将给您该错误 = 0;本身。但由于它用于预期布尔值的位置,因此它尝试将
(x%min)=0的结果转换为bool,因此error@Selman22是,它将提供无法隐式转换的。。首先是消息,然后是作业的左侧。。我想至少发表一下评论,这样我就能看出我错在哪里了?
        int x, a, b, c, min;
        x = Convert.ToInt32(tbx.Text);
        a = x / 100;
        b = (x / 10) % 10;
        c = x % 10;
        min=a;
        if (b < min) 
        b = min;
        if (c < min) 
        c = min;
        if ((x % min) == 0)
           lbl_solution.Text="number is divisible";
        else
            lbl_solution.Text="number is not divisible";