C#中FOR循环中使用递归得到的结果不对···求各位大大指导下!
dt4.Rows[i]["IDENTIFIER"]. 是子节点ID;["TITLE"]是节点名称;["PARENTID"]是父节点ID
Session["COURSE_CHAPTERINFO"] 是我将所有的节点查出来放在的Datatable中并储存在Session中
dr["TITLE"] = SerchTitle(dt4.Rows[i]["IDENTIFIER"].ToString(), "");//在此处调用方法
//调用的方法
public string SerchTitle(string IDENTIFIER, string value)
{
string str_title = value;
try
{
if (Session["COURSE_CHAPTERINFO"] != null)
{
DataTable DT = (DataTable)Session["COURSE_CHAPTERINFO"];
for (int i = 0; i < DT.Rows.Count; i++)
{
if (DT.Rows[i]["IDENTIFIER"].ToString() == IDENTIFIER)
{
if (!String.IsNullOrEmpty(str_title))
{
str_title = DT.Rows[i]["TITLE"].ToString() + "-" + str_title;
}
else
{
str_title = DT.Rows[i]["TITLE"].ToString() + str_title;
}
SerchTitle(DT.Rows[i]["PARENTID"].ToString(), str_title);
}
}
}
}
catch
{
}
return str_title;
}
为什么我调试的时候已经运行到 return str_title; 这步的时候程序又跑到
SerchTitle(DT.Rows[i]["PARENTID"].ToString(), str_title);这里了··很费解的事情! 求各位大大指点迷津!
相关推荐
C#中for循环、while循环循环执行的方法
先给大家介绍下C#中的循环执行for循环 在这一节练习中,我们向大家介绍一下C#中的另一种重要的循环语句,for循环。 for(表达式1;表达式2;表达式3) { 循环体 } 表达式1:一般为赋值表达式,给控制变量赋初值; 表达式2:逻辑表达式,循环控制条件;当条件为真时,循环执行循环体中的语句。 表达式3:一般为赋值表达式,给控制变量增量或减量。 这样看起来是不是挺抽象的。通过实际的例子,你会非常容易理解for循环。 你创建一个项目。解决方案名称为Sloution18,项目名称为Exercise18,项目类型为控制台程序。点击Program.cs. 在里边加入这些代码。 简单解释一下这个
C#中阶乘计算的for循环实践
在数学中,阶乘是一个非常基础且重要的概念,表示为n!,是所有小于或等于n的正整数的乘积。例如,5!阶乘是数学中的一个重要概念,表示为正整数n的所有正整数乘积。符号”!”用来表示阶乘,如5的阶乘写作5!,等于1 * 2 * 3 * 4 * 5 = 120。阶乘的定义被扩展到0!,其值被定义为1。在编程中,阶乘常被用来举例说明循环结构的使用。阶乘的计算过程实际上是一个乘法序列,从1乘以2开始,一直乘到n。这个过程在计算机程序中可以通过迭代来实现。
C#递归计算求阶乘和求年龄实例源码
C#递归计算求阶乘和求年龄实例源码 1、n!=n*(n-1)*(n-2)*......*3*2*1 n!=n*(n-1)! 2、 趣味问题——年龄。有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?用递归算法实现。 n的年龄=n-1的年龄+2
C#语言编写求1!+2!+...+10!的源程序
最简单的C#语言设计的求1!+2!+...+10!的源程序!
C#用递归算法实现:一列数的规则如下: 1、1、2、3、5、8、13、21、34,求第30位数是多少
本文主要介绍三种方法,解决面试中常见的问题,求第30位数是多少的问题,希望能给大家一个参考。


