码迷,mamicode.com
首页 > 系统相关 > 详细

面试 企业shell编程基础问题解决实践(亲测)

时间:2016-07-19 02:30:02      阅读:281      评论:0      收藏:0      [点我收藏+]

标签:shell 企业面试

问题是选的老男孩老师博客里面的问题,举一反三其中也自己也延伸了两题。

老男孩老师博客的地址http://oldboy.blog.51cto.com/2561410/1718607


言归正传,


1.请用shell或Python编写一个正方形,接收用户输入的数字。

技术分享

方法:vim zhong1.sh
 

#!/bin/bash
read -p "Please Enter a number:" n 
for ((x=1;x<=$n;x++));do
    for ((y=1;y<=$n*2;y++))do
        echo -n "+"
    done
    echo ""
done


 例如2:用■号实现  (zhong2.sh)

技术分享

方法:vim zhong2.sh

#!/bin/bash
read -p "Please Enter a number:" n 
for ((x=1;x<=$n;x++));do
    for ((y=1;y<=$n;y++))do
        echo -n "■ "
    done
    echo ""
done


 
2.请用shell或Python编写一个等腰三角形,接收用户输入的数字。

例如:用*号实现 (zhong3.sh)

技术分享

方法:vim zhong3.sh

#!/bin/bash
read -p "Please Enter a number:" n 
for ((x=1;x<=$n;x++));do 
    for ((z=1;z<=$n-x;z++));do
    echo -n " "
    done
    for ((y=1;y<=a+1;y++));do
    echo -n "*"
    done
    echo 
    a=$((a+2))
done

 

 3.请用shell或Python编写一个倒等腰三角形,接收用户输入的数字。(题二的延生)

例如:用*号实现 (zhong33.sh)

技术分享

方法:vim zhong33.sh  (可以在zhong3.sh的基础上行改变一下就可以的出来)

#!/bin/bash
read -p "Please Enter a number:" n 
for ((x=1;x<=$n;x++));do 
    for ((z=0;z<x-1;z++));do
    echo -n " "
    done
    for ((y=1;y<=$n-(a+1-$n);y++));do
    echo -n "*"
    done
    echo 
    a=$((a+2))
done


4.请用shell或Python编写一个菱形,接收用户输入的数字。(题二的延生)

例如:用*号实现 (zhong333.sh)

技术分享

方法:vim zhong333.sh

 #!/bin/bash
read -p "Please Enter a number:" n 
for ((x=1;x<=$n;x++));do 
    for ((z=1;z<=$n-x;z++));do
    echo -n " "
    done
    for ((y=1;y<=a+1;y++));do
    echo -n "*"
    done
    echo 
    a=$((a+2))
done
b=2
for ((x=1;x<=$n;x++));do
    for ((z=0;z<=x-1;z++));do
      echo -n " "
    done
    for ((y=1;y<=$n-(b+1-$n);y++));do
      echo -n "*"
    done
    echo
    b=$((b+2))
done


5.请用shell或Python编写一个画直角梯形程序,接收用户输入的参数n,m
 

例如:用*号实现  (zhong4.sh)

技术分享

方法:vim zhong4.sh

 #!/bin/bash
for ((x=1;x<=$2;x++));do
    for ((y=1;y<=$1+a;y++))do
        echo -n "+ "
    done
    a=$((a+1))
    echo ""
done


以上结果亲测过,能完全实现题目的要求

linux环境:Linux 51master 2.6.32-504.el6.x86_64 #1 SMP Wed Oct 15 04:27:16 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

本文出自 “云端的运维” 博客,请务必保留此出处http://ycentos.blog.51cto.com/10297565/1827378

面试 企业shell编程基础问题解决实践(亲测)

标签:shell 企业面试

原文地址:http://ycentos.blog.51cto.com/10297565/1827378

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!