分类存档: 算法介绍

javascript实用模板引擎

John Resig 开发的一个简易模板引擎,配合json非常的实用。

// Simple JavaScript Templating
// John Resig - http://ejohn.org/ - MIT Licensed
(function(){
  var cache = {};
 
  this.tmpl = function tmpl(str, data){
    // Figure out if we're getting a template, or if we need to
    // load the template - and be sure to cache the result.
    var fn = !/\W/.test(str) ?
      cache[str] = cache[str] ||
        tmpl(document.getElementById(str).innerHTML) :
     
      // Generate a reusable function that will serve as a template
      // generator (and which will be cached).
      new Function("obj",
        "var p=[],print=function(){p.push.apply(p,arguments);};" +
       
        // Introduce the data as local variables using with(){}
        "with(obj){p.push('" +
       
        // Convert the template into pure JavaScript
        str
          .replace(/[\r\t\n]/g, " ")
          .split("<%").join("\t")
          .replace(/((^|%>)[^\t]*)'/g, "$1\r")
          .replace(/\t=(.*?)%>/g, "',$1,'")
          .split("\t").join("');")
          .split("%>").join("p.push('")
          .split("\r").join("\\'")
      + "');}return p.join('');");
   
    // Provide some basic currying to the user
    return data ? fn( data ) : fn;
  };
})();

很少的一点代码。但功能非常实用。

准备json和一个模板即可

jquery simple template demo

C语言杨辉三角的算法

#include 
main()
{
int a[10][10];
int i,j;
for(i=0;i<10;i++)
a[i][0]=1;
for(i=0,j=0;i<10,j<10;i++,j++)
a[i][j]=1;
for(i=2;i<10;i++)
for(j=1;j<=i-1;j++)
a[i][j]=a[i-1][j-1]+a[i-1][j];
for(i=0;i<10;i++)
{
for(j=0;j
		

关于十进制转十六进制的算法!

#include 
main()
{
char a[]="0123456789abcdef",b[50];
int n,i=0;
printf("请输入您要转换的数!n");
scanf("%d",&n);
while(n)
{
b[i++]=a[n%16]; //我最欣赏的一句
n=n/16;
}
for(n=i-1;n>=0;n–) //把N重新初始化
printf("%c",b[n]);
printf("n");
}

学生成绩管理系统(C语言简易)

#include 
main()
{
int chenjidan[10][6];
int i,j,n,a;
printf(“n请输入要插入的条数:”);
scanf(“%d”,&n);
printf(“n请输入成绩,以空格符分开:n”);
printf(“************************************n”);
for(i=0;i
		

关于十进制转二进制的算法!

#include 
main()
{
int n,a[100],i=0,j;
printf(“请输入一个要转换的数:”);
scanf(“%d”,&n);
while(n>=1)
{
a[i++]=n%2;
n/=2;
}
printf(“二进制:”);
for(j=i-1;j>=0;j–)
printf(“%d”,a[j]);
printf(“n”);
}