有关awk脚本编程的问题

小弟初自学LUNIX,试着做几个关于 awk 脚本的题目,现有两个不太行,希望能得到帮助:
1.写一个 awk 脚本,该脚本可以按相反的顺序打印出一个记录的每个域。
2.写一个用于结算支票帐户的 awk 脚本,该程序应该在每次用户产生一个交易时打印出帐的余额。交易存储在一个文件中,每一行记录的格式如下:
       command:date:comment:amount
date是交易产生的时间;comment是用于描述交易的字符串;amount为交易的总额,命令command确定对于总量结余amount应该怎样处理。有效的command命令有:
*B指出结余,当遇见该命令时,帐目结余被设为交易额amount;
*D指出存款,当遇见该命令时,交易额amount应加到结余上;
*C指出提款,交易额amount应从结余中减去(指支票);
*W指出提款,交易额amount应从结余中减去(指现金)。
C和W的命令的不同之处在于:C命令为记录增加了一个额外域:              command:date:comment:check number:amount
另外B只使用两个域:B:amount
输入的类似文件如下:
$cat account.txt
B:0
M:500
D:10/24/97:inital deposit:100
C:10/25/97:credit card:101:100
W:10/30/97:gas:21.43
W:10/30/97:lunch:11.34
C:11/02/97:toner:41.45
C:11/04/97:car payment:347.23
D:11/06/97:dividend:687.34
W:11/10/97:emergency cash:200