Xslt中递归的实现

博客展示了一段XSLT代码,定义了一个名为addFunction的模板,通过递归调用实现加法运算。代码中使用了参数传递和条件判断,当当前数字小于等于10时会继续递归调用,输出每次加法运算的结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

None.gif<?xml version="1.0" encoding="gb2312"?>
None.gif
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format">
None.gif    
<xsl:template match="/">
None.gif        
<!--      addFunction(addString,currentNum,theResult)     -->
None.gif        
<xsl:call-template name="addFunction">
None.gif            
<xsl:with-param name="addString" >1</xsl:with-param>
None.gif            
<xsl:with-param name="currentNum">1</xsl:with-param>
None.gif            
<xsl:with-param name="theResult" >1</xsl:with-param>
None.gif     
</xsl:call-template>
None.gif     
None.gif    
</xsl:template>
None.gif
None.gif    
<!-- 
None.gif        void addFunction(string addString,int currenNum,int thgeResult) 
None.gif        {
None.gif            Console.Write(addString + "+" + currenNum.ToString() + " =");
None.gif            Console.WriteLine((currenNum+thgeResult).ToString());
None.gif
None.gif            if (currentNum<10)
None.gif            {
None.gif                addFunction(addString+"+"+currentNum.ToString(),currenNum+1,thgeResult+currenNum); 
None.gif            }
None.gif        }
None.gif    
-->
None.gif    
<xsl:template name="addFunction">
None.gif        
<xsl:param name="addString"/>
None.gif        
<xsl:param name="currentNum"/>
None.gif        
<xsl:param name="theResult"/>
None.gif        
None.gif        
<xsl:value-of select="concat($addString,'+',$currentNum)"/> = 
None.gif        
<xsl:value-of select="$theResult + $currentNum"/>
None.gif        
<br/>
None.gif        
<xsl:if test="$currentNum &lt;= 10 ">
None.gif            
<xsl:call-template name="addFunction">
None.gif                
<xsl:with-param name="addString" select="concat($addString,'+',$currentNum)"/>
None.gif                
<xsl:with-param name="currentNum" select="$currentNum + 1"/>
None.gif                
<xsl:with-param name="theResult" select="$theResult + $currentNum"/>
None.gif            
</xsl:call-template>
None.gif         
</xsl:if>
None.gif    
</xsl:template>
None.gif
</xsl:stylesheet>
None.gif
None.gif
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值