C#关于递归等等
递归的例子1 计算1到100相加的值
public partial class Default4 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Response.Write(checks(100));
}
}
public static int checks(int i)
{
if (i == 0)
{
return 0;
}
return checks(i-1)+i;
}
}
递归的例子2
Dal dal = new Dal();
protected void Page_Load(object sender, EventArgs e)
{
string road ="";
getCategoryRoad(603, ref road); //主要用来存储数据
Response.Write(road);
}
public void getCategoryRoad(int category_id,ref string strRoad)
{
DataTable dt = dal.GetDatable(category_id);
if (dt.Rows.Count>0)
{
int category_father_id = Convert.ToInt32(dt.Rows[0]["category_father_id"]);
strRoad += dt.Rows[0]["category_father_id"].ToString()+",";
getCategoryRoad(category_father_id, ref strRoad);
}
else
{
return;
}
}
public DataTable GetDatable(int id)//type=2 father_id type=1 id
{
int type = 1;
_accessMySql = DBFactory.getDBAccess(DBType.MySql, connectionString);
this.connStr = connectionString;
StringBuilder sbSql = new StringBuilder();
sbSql.Append("select category_id,category_father_id,category_name from product_category where 1=1 ");
if (1 == type)
{
sbSql.AppendFormat(" and category_id = {0}", id);
}
else
{
sbSql.AppendFormat(" and category_father_id = {0}", id);
}
DataTable dt = _accessMySql.getDataTable(sbSql.ToString());
return dt;
}
最新文章
- asp.net 事件加载顺序
- ab中文手册
- 艺术品照片融合到背景墙上效果及DEMO
- maven项目转eclipse工程的命令:eclipse.bat
- Devexpress之DateEdit学习,可选择日期时 zt
- 服务端NETTY 客户端非NETTY处理粘包和拆包的问题
- 安装用户脚本的福音:Tampermonkey(油猴)
- js设置当前页面始终为框架最顶层
- java基础:输出数组中指定位置的数据
- [算法]浅谈求n范围以内的质数(素数)
- Windows Hook技术
- android studio设置窗口颜色和字体
- Python 学习笔记1 安装和IDE
- 模块 import 与from
- 微信小程序实现部分双向数据绑定(为input、picker、textarea编写统一的更新数据逻辑)
- go函数练习
- django 数据模型中 null=True 和 blank=True 有什么区别
- linux系统上次启动时间查看
- 开源项目PullToRefresh详解(一)——PullToRefreshListView
- vue 过渡效果