2010-04-19 79 views
0

我想要打印表达式Xmin和Ymin,而不需要计算最终值。 I,E与I和J的值作为1,2,3,4,5打印表达式没有评估它

例如 当I = 1

Xmin= Xmin ((1 - 1)*10 + (1 - 1)*1) 

是有办法做..我尝试了下面的代码,但没有运气:

int a, g; 
a = 10; 
g = 1; 
for (int J=1; J<=5; J++) 
{ 
    for (int I = 1; I <= 5; I++) 
    { 
     string Xmin = Convert.ToString((I - 1)*a + (I - 1)*g); 
     string Ymin = Convert.ToString((J - 1) * a); 
     Debug.WriteLine("X=" + Xmin + "Y=" + Ymin); 
    } 
} 

回答

3

您必须使用的String.Format:

string Xmin = String.Format("({0} - 1)*{1} + ({0} - 1)*{2}", I, a, g); 

此外,在.N ET 3.5你可以使用表达式树,但我敢说,这将是一个比使用String.Format更复杂的解决方案。

+0

非常感谢你,有一个愉快的一天 拉吉 – Raj 2010-04-19 02:52:15

+0

我很想在一个'表达扔'版本,只是为了窃笑......但它可能会是一百行(或以上),与您的单行相比; -p – 2010-04-19 04:14:42

1

你需要把表达在字符串中为了做到这一点,可能使用String.Format

string Xmin = String.Format("Xmin=({0} - 1)*{1} + ({0} - 1)*{2}", I, a, g); 
string Ymin = String.Format("Ymin=({0} - 1) * {1}", J, a); 

Debug.WriteLine("X=" + Xmin + "Y=" + Ymin);