下面是我对编程的理解。如有类同纯属巧合,如果一个都没有的话算我胡扯。
编程语言这东西,重要的就两个方面,语法和思想。
如何学习,就好像我们学习一门外语一样,翻译和模仿。
看懂是最基本的,始终还是要写出来的,最终还得能说得出来。
今天拿来的这三个例子主要涉及到:
就是awk和shell的打印输出语法;
awk和shell对数学运算的处理;
awk和shell的循环结构的语法差异,也是今天谈及的重点。
由于我对Perl的学习也不长,不多做谈论。如果没有耐心,可以略过。因为它与前两者在变量声明,引用方面就有不小的差异。
AWK脚本:
#!/bin/awk -f
# wang_xiaoyu@qq.com
# 2009-09-04 02:34:38
# http://wangxiaoyu.blog.51cto.com/
BEGIN{
print "方法一:\n"
{
for(i=1;i<=9;i++)
{
for(j=1;j<=i;j++)
printf "%10s ",j"*"i" = "j*i
print ""
}
}
print "方法二:\n"
{
i=1
while(i<=9)
{
j=1
while(j<=i)
{
printf "%10s ",j"*"i" = "j*i
j++
}
print ""
i++
}
}
}
Shell脚本:
#!/bin/ksh
#!/bin/bash
# wang_xiaoyu@qq.com
# 2009-09-16 11:07:39
# http://wangxiaoyu.blog.51cto.com/
echo "方法一:"
for((i=1;i<=9;i++))
do
for((j=1;j<=$i;j++))
do
echo -en "$j*$i = "$(($j*$i))" "
done
echo
done
echo
echo "方法二:"
i=1
while((i<=9))
do
j=1
while((j<=$i))
do
echo -en "$j*$i = "$(($j*$i))" "
let j++
done
let i++
echo
done
Perl脚本:
#!/usr/bin/perl -w
# wang_xiaoyu@qq.com
# 2009-09-16 11:11:49
use strict;
my $i;
my $i;
print "方法一:\n";
print " ","\033[0;34;40m-" x 10,"\n\033[0m";
foreach(1 .. 9){
$i=$_;
print "\033[0;34;40m|\033[0m";
foreach(1 .. $i){
print "$_ * $i = ",$_*$i," ";
};
print "\n";
};
print " ","\033[0;34;40m-" x 100,"\n\033[0m";
明天上班,回头多更新一篇,明天这个分类就不做更新了。
附件:http://down.51cto.com/data/2354048
本文转自xiaoyuwang 51CTO博客,原文链接:http://blog.51cto.com/wangxiaoyu/202306,如需转载请自行联系原作者