如何在循环外打印foreach循环中获得的值
本文关键字:循环 打印 foreach | 更新日期: 2023-09-27 18:13:07
我在foreach
循环中找到了denom
和numer
的值,我想用它们来找到average = numer/denom
。但是它显示了一个错误:
名称' number '在当前上下文中不存在。
和
名称' dom '在当前上下文中不存在。
请查看代码并建议修复
foreach (DataRow rw in dataTablebuy.Rows)
{
int denom = 0;
denom = denom + int.Parse(rw["Quantity"].ToString());
int numer = 0;
numer = numer + (int.Parse(rw["Quantity"].ToString()) * int.Parse(rw["price"].ToString()));
}
float avg = numer / denom;
Response.Write(String.Format("Element {0}", avg));
必须在循环外声明变量。否则它不能在循环(作用域)之外使用。我还修改了你的代码。你用的是denom = denom + ...
,看看我是怎么做的。它的工作原理完全相同。
int denom = 0;
int numer = 0;
foreach (DataRow rw in dataTablebuy.Rows)
{
denom += int.Parse(rw["Quantity"].ToString());
numer += (int.Parse(rw["Quantity"].ToString()) * int.Parse(rw["price"].ToString()));
}
float avg = numer / denom;
Response.Write(String.Format("Element {0}", avg));
如果你想在循环外使用变量,那么它们需要在循环外声明。