【数据结构和linux的shell编程问题!100分献上】

来源:百度知道 编辑:UC知道 时间:2024/06/22 05:17:54
别看只有五十分,答案只要是对的且比较简易易懂就全额给分+50,说到做到
题目一:
如下,在shell里面我用while写循环,然后循环体里面加上建立文件的语句,但是建立文件命名的时候怎么弄呢,是后面加上三位数字……不知道怎么操作
linux里面:编写shell脚本,实现下列功能:

(1) 建立/root/test目录,在此目录下创建100个文件,文件命名规则是A001,A002,。。。,A100;
(2) 再创建1000个文件,命名规则为B+数字,例如B1090;
(3) 建立目录jishu和oushu;
(4) 根据文件名中的数字奇数和偶数情况,自动将相应文件移动到jishu和oushu目录;

题目二:数据结构问题
1、实现树(将树用“左儿子右兄弟”的存储方式进行存储)类Tree的成员函数 InsertChild(),即在任意指定结点之下,插入一个数据值为value的结点,作为该结点的任意子结点;
2、实现树类Tree的成员函数 DeleteChild(),即删除任意指定结点的第i个子结点及其所有子树。
没人回答,真郁闷,分少了还是什么原因?

#改成用for语句吧

#!bin/bash

mkdir -p /root/test

for i in `seq -f 'A%03g' 1 100`;do
cp /dev/null /root/test/$i;
done

for i in `seq -f 'B%04g' 1 1000`;do
cp /dev/null /root/test/$i;
done

for i in jishu oushu;do
mkdir /root/test/$i
done

cd /root/test

for i in `ls'`;do
b=`echo $i|sed 's/^[a-z]*\([0-9]*$\)/\1/`
if [ `expr $b % 2` == "1" ];then
mv $i jishu/
else mv $i oushu/
done