30道linux操作系统shell程序综合设计题
上次分享了常见的21个shell命令,这次看看掌握咋样了呗
题目1
步骤 1:使用 vi 编辑文件 shell 脚本文件 exe1.sh#!/bin/bashvar=”hello”echo $varecho ”The program $0 is now running ”echo ”The first parameter was $1”echo ”The second parameter was $2”echo ”The parameter list was $*”echo ”The user’s home directory is $HOME”echo ”please enter a new word”read varecho $varexit 0步骤 2:对执行文件赋予执行权限步骤 3:执行文件
题目2
步骤 1:使用 vi 编辑文件 shell 脚本文件 sum.sh#!/bin/bashgsum=0function sumn(){ sum=0for((i=1;i<=$1;i++))dolet sum=$sum+$idonegsum=$sumreturn $sum}sumn 10echo “sum=$?”步骤 2:对执行文件赋予执行权限步骤 3:执行文件
题目3
步骤 1:使用 vi 编辑文件 sum.c,#include<stdio.h>int func(int n){int sum=0,i;for(i=0;i<n;i++){sum+=i;}return sum;}main(){int i;long result=0;for(i=1;i<=100;i++){result+=i;}printf("result[1-100]=%d\n",result);printf("result[1-100]=%d\n",func(100));}步骤 2:编译文件并生成可执行文件步骤 3:如果有错误,再次使用 vi 修改 sum.c 的内容;然后再次编译。直至编译时不报任何错误步骤 4:执行文件
题目4
步骤 1:使用 vi 编辑文件 application.c#include <stdio.h>#define N 10void greeting (char * name);int main(void){char name[N];printf("Your Name, Please:");scanf("%s", name);greeting(name);return 0; }void greeting (char * name){ printf("Hello %s! \r\n", name); }步骤 2:编译文件并生成可执行文件步骤 3:如果有错误,再次使用 vi 修改 sum.c 的内容;然后再次编译。直至编译时不报任何错误步骤 4:执行文件
题目5
步骤 1: 新建一个文件夹(文件夹的名字为自己姓名的拼音字母),例如姓名为张三,则新建文件夹名字为 zhangsan步骤 2: 进入新建文件夹中(例如 zhangsan),使用 vi 编辑文件 linux.c并保存#include <stdio.h>int main(void){printf("I Like Linux! \r\n");return 0;}步骤 3:退出新建文件夹(例如 zhangsan),使用压缩命令将新建文件夹打包压缩为 zhangsan.tar.gz
题目6
步骤 1: 新建一个文件夹(文件夹的名字为姓名的拼音字母),例如姓名为张三,则新建文件夹名字为 zhangsan步骤 2: 进入新建文件夹中(例如 zhangsan),使用 vi 编辑文件 linux.c并保存#include <stdio.h>int main(void){printf("I Like Linux! \r\n");return 0;}步骤 3:在新建文件夹(例如 zhangsan)中再次新建一个文件夹,取名为 test,将 linux.c 程序拷贝到 test 文件夹中
题目7
步骤 1: 新建一个文件夹(文件夹的名字为姓名的拼音字母),例如姓名为张三,则新建文件夹名字为 zhangsan步骤 2: 进入新建文件夹中(例如 zhangsan),使用 vi 编辑文件 linux.c并保存#include <stdio.h>int main(void){printf("I Like Linux! \r\n");return 0;}步骤 3:在新建文件夹(例如 zhangsan)中将 linux.c 程序更名为 test.c
题目8
步骤 1: 使用 vi 编辑文件 traffic.sh 程序要求依次满足以下要求:a.使得首先程序输出 “The shell program was written by zhangsan ”b.使得程序输出“current signal is:”c. 程序等待键盘输入信号(输入的信号包括“red”,“green”,“yellow”)d.如果输入的信号为“red”,显示“stopped”为“green”,显示“pass!”为“yellow”,显示“wait”步骤 2:对执行文件赋予执行权限步骤 3:执行文件#! /bin/bash# traffic signalecho "current signal is:"read signalcase $signal inred)echo 'stopped!';;green)echo 'pass!';;yellow)echo 'wait!';;esac
题目9
步骤 1: 使用 vi 编辑文件 test.c#include <stdio.h>main ( ){int i, j, k;for (i=1; i<=6; i++){for (j=1; j<=6; j++){if (i>=j){k=i+j;printf (“%d + %d = %d \t”, i, j,k);}}printf (“\n”);}}步骤 2:编译文件并生成可执行文件;步骤 3:如果有错误,再次使 用 vi 修改对应程序的内容;然后再次编译。直至编译时不报任何错 误;步骤 4:执行文件
题目10
步骤 1:使用 vi 编辑文件 shell 脚本文件 sum.sh#!/bin/bash#an example script of whileclearloop=0while [ $loop –le 10 ]dolet loop=$loop+1echo "the loop current value is: $loop"done步骤 2:对文件赋予执行权限步骤 3:执行文件
题目11
步骤 1: 使用 vi 编辑文件 shell 脚本文件 case.sh#!/bin/bash#an example script of caseclearecho "Are you like Linux?"read like_itcase $like_it iny|Y|yes|Yes) echo "Linux is a good friend of us.";;n|N|no|No) echo "Try it, and you will like it.";;*) echo "you answer is: $like_it";;esac步骤 2:对执行文件赋予执行权限步骤 3:执行文件
题目12
步骤 1.采用普通用户建立一个空文件, 文件名为 exam.sh,并查看其权限。步骤 2. 采用文字设定法,修改 exam.sh 的文件权限,即,拥有者增加执行权限,同组用户减去写权限,其他用户去掉所有权限,并查看修改结果。步骤 3.采用数字设定方法,设定 exam.sh 的文件权限 即,文件拥有者有读 r,写 w 和执行 x 的权限,同组用户拥有读 r 和执行 x 的权限,而其它用户只有读 r 的权限,并查看修改结果
题目13
步骤 1.建立姓名全拼小写(以下用 zhangsan 代替)的文件夹。步骤 2.在此文件中生成 file1.txt 文件,内容“my name is zhangsan” ;生成 file2.txt 文件, 内容 “this is file2”;生成 file3 文件,内容“thisis file3”.步骤 3.合并 file1、file2 和 file3 文件为 file4.txt 文件,显示 file4 中的内容.步骤 4.用“find”命令在用户主目录中查找 file4.txt 文件
题目14
步骤 1.用超级用户 root 创建一个新用户,用户名为自己的姓名全拼小写(以下以 lisi 为例),设置其主目录为/home/lisi,步骤 2.通过/etc/passwd 查看用户是否创立成功。步骤 3.用超级用户给 lisi 设置密码, 并切换到用户 lisi,然后切换回超级用户步骤 4.更改用户 lisi 的用户名为姓名全拼小写+学号前两位(以下以lisi08 为例),并通过/etc/passwd 查看是否生效。步骤 5.删除用户 lisi08 及其主目录
题目15
把下面一段文字用 vi 编辑器输入到文本文件 bj3 中:Time: PM 3:30 2012.5.30Place:Computer Hall 408Lecture:History of Computer Science把第 1 行到第 3 行连续复制 3 遍。在第一行前面添加标题“Meeting Notes”把最后一行的“History”改成“Future”。在最后一行后面添加上 2021年6 月月历。
题目16
用 vi 编辑器新建文件文件 gd3,输入下面一行语句:The vi editor was developed at the Univesity of California,Berkeley.把该行语句复制 10 行。把最后一行中出现的所有大写字母均改为相应的小写字母。在第一行前面插入标题,内容是“vi history”。在最后一行附加上当前日期和时间。
题目17
编写 Shell 程序,使其执行时在屏幕上输出整数 1~50,但其中位于 20 和 30 之间的偶数不输出。for ((i=1;i<=50;i++))doif ((i>=20 && i<=30 && i%2==0))then continuefiecho $idone
题目18
编写 Shell 程序,在屏幕上输出 10 行,第一行输出 1 个“*”号,第二行输出 3个“*”号,第二行输出 5 个“*”号,依此类推。for ((i=1;i<=10;i++))dofor ((j=1;j<=2*i-1;j++))doecho -n "*"doneechodone
题目19
编写 Shell 程序,输入一批正整数(以 0 为结束标志),请统计其中奇数的个数,并把统计结果输出。sum=0echo "please enter the interger,ended by 0"read numwhile((num!=0))doif((num%2==1))then ((sum=sum+1))firead numdoneecho "the number of ji shu is $sum"
题目20
编写 Shell 程序,求 1*1+2*2+3*3+…….+50*50 的总和。sum=0for ((i=1;i<=50;i++))do((ji=i*i))((sum=sum+ji))doneecho $sum
题目21
编写 Shell 程序,列出等差数列 1,3,5,7,9,…的前 20 项及其总和。(上机)n=1s=0for ((i=1;i<=20;i++))doecho$n((s=s+n))((n=n+2))doneecho"sum=$s"
题目22
编写 Shell 程序,把 100 分转换为 5 级计分制,从键盘输入百分值,根据情况,显示具体的等级,其中 90-100 之间对应 A,80-89 之间对应 B,70-79 之间对应C,60-69 之间对应 D,60 以下对应 E。echo "please input x="readxif(($x<=100 && $x>=90))thenecho "A"elseif(($x>=80 && $x<=89))thenecho "B"elseif(($x>=70 && $x<=79))thenecho "C"elseif(($x>=60 && $x<=69))thenecho "D"elseecho"E"fifififi
题目23
编写 Shell 程序,在屏幕上输出如下格式的九九表。1*1=12*1=2 2*2=4……………….8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=649*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81for ((i=1;i<=9;i++))dofor ((j=1;j<=i;j++))do((b=i*j))echo -n "$i*$j=$b "doneechodone
题目24
编写 Shell 程序,首先输出提示信息"please input x",然后从键盘读入一个整数,接着判断该数是否大于 11,如果是则输出 2012 年 12 月份的月历,否则输出 2013 年 11 月份的月历。echo "please input x"read xif ((x>=11))thencal 12 2012elsecal 11 2013fi
题目25
编写 Shell 程序,首先显示一行信息:“input x and y”,然后从键盘读入两个整数,接着显示“the sum of two input is ”,然后把两个数的和输出到屏幕上,最后输出系统当前日期和时间信息。echo "input x and y"read x yecho "the sum of two input is"((s=x+y))echo $sdate
题目26
编写 Shell 程序 test5,使之从命令行接受数字,输出最大值,例如,键入 test51 2 3,则屏幕显示:the largest number is : 3。n=$#if (($#<1))then echo "error number"exitelsemax=$1while ((n>=1))doif (($1>=max))thenmax=$1fishift((n=n-1))doneecho " the largest numberis :$max"fi
题目27
编写程序 test5,使之从命令行接受数字,输出最小值,例如,键入 test5 1 2 3屏幕显示:the smallest number is : 1。n=$#if (($#<1))then echo "error number"exitelsemin=$1while ((n>=1))doif (($1<=min))thenmin=$1fishift((n=n-1))doneecho " the smallest number is :$min"fi
题目28
编写 Shell 程序,求 1!+ 2!+ 3!+….+ 10!的值。s=0echo "please input number:"read xfor ((i=1;i<=x;i++))dot=1for ((j=1;j<=i;j++))do((t=t*j))done((s=s+t))doneecho "the sum is $s"PAGE\* MERGEFORMAT8PAGEPAGE 8
题目29
步骤 1:使用 vi 编辑文件 hello.c,实现#include <stdio.h>main( ){char name[20];printf("Please input your name:");scanf("%s", name); //输入姓名printf("Welcome %s!\n",name); //输出 welcome 姓名return 0;}步骤 2:编译文件并生成可执行文件步骤 3:如果有错误,再次使用 vi 修改 hello.c 的内容;然后再次编译。直至编译时不报任何错误步骤 4:执行文件
题目30
步骤 1:使用 vi 编辑文件 shell 脚本文件 hello.sh#!/bin/bash#a Simple shell Script Example#a Functionfunction say_hello(){echo "Enter Your Name,Please. :"read nameecho "Hello $name"}echo "Programme Starts Here....."say_helloecho "Programme Ends."步骤 2:对执行文件赋予执行权限步骤 3:执行文件
30道linux操作系统shell程序综合设计题相关推荐
- sata及adma控制器linux操作系统驱动的设计与实现,SATA及ADMA控制器Linux操作系统驱动的设计与实现.pdf...
SATA及ADMA控制器Linux操作系统驱动的设计与实现.pdf 书书书 第 23 卷第 ll 期 计算机应用与软件VoI 23 No ll 2006 年 ll 月 Computer AppIica ...
- linux常用的命令shell,Linux操作系统Shell和常用命令汇总
简述 本文主要介绍Shell和Linux常用命令. Shell Shell 是一个用 C 语言编写的应用程序,提供了用户访问Linux操作系统内核服务的界面,它可以用来启动.挂起.停止.编写程序.Sh ...
- sata及adma控制器linux操作系统驱动的设计与实现,SATA及ADMA控制器Linux操作系统驱动的设计与实现...
摘要: 本文设计和实现了一种新型存储外设的操作系统驱动.该存储系统硬件上采用SATA 磁盘及SATA 控制器,软件上采用Linux操作系统驱动来实现,涉及IDE/ATA和SCSI总线技术及协议,若需要 ...
- 关于第一次Linux操作系统月考错题总结
目录 一:选择题 二:判断题 三:填空题 四:编程题 五:试卷 一:选择题 5. 比较重要的系统配置资料文件,一般来说大部分位于[ ]目录下. A./etc B./boot C./home D./us ...
- linux操作系统期末考试大题,《Linux操作系统》Linux-期末考试试题-含答案.doc
一.填空题(请将答案填入题后括号中):共20空,每空1分,满分20分. 1.在Linux系统上做备份可以有两种类型:( 系统备份 )和( 用户备份 ). 2.进程的运行有两种方式,即( 独立运行 )和 ...
- Linux操作系统 系统界面设计
目录 一.系统要求 二.系统功能 三.总体设计 1.系统整体逻辑的程序流程图 2.game功能模块逻辑的程序框图 3.高级功能模块的程序流程图 四.具体实现 1. 主菜单 2.用户信息 3.文件目录管 ...
- 30道linux面试题与答案(21-30)
21.显示/etc/inittab中包含了:一个数字:(即两个冒号中间一个数字)的行 grep "\:[0-9]\{1\}\:" /etc/inittab 22.怎么把脚本添加到系 ...
- 如何设置Linux操作系统shell命令的默认语言
Linux中语言的设置和本地化设置真是一个很繁琐的事情,时不时的会出现乱码的情况. 一般来说,linux中显示什么语言是通过环境变量来确认的. 这些环境变量包括: $LANG / $LANGUAGE ...
- 30道面试常见的数据结构算法题
注意: 边界条件的判断 取地址符传参的使用 溢出问题,long long 题目来源:https://github.com/ZXZxin/ZXBlog/blob/master/%E5%88%B7%E9% ...
最新文章
- 技术走向管理一些思考(1)-性格特质和自我管理
- 基于Laravel开发博客应用系列 —— 构建博客后台管理系统
- rpgmaker mv修改_吴青峰版一点点MV 释出,唱作女帝陈珊妮执导
- [转载]地球物理经典书目——成像方向
- java求两个集合的交集和并集,比较器
- Test传送门(更新中)
- 用java写的常见排序
- 流浪不是我的初衷 ... ...
- QtCreate由MinGW编译的项目,换为MSVC编译器后编译无法通过
- go语言源自python语言_别再用Python编写机器学习基础设施啦,Go语言它不香吗?...
- pg_lightool-postgres数据分布查看工具
- 初学“深入浅出MFC”之零篇
- 《统计学》第八版贾俊平第十四章指数知识点总结及课后习题答案
- matlab特征值意义,特征值
- MATLAB Simulink
- MathWorks 中国
- vue中swiper,vue-awesome-swiper实现轮播;鼠标移入暂停,移除播放;点击暂停按钮暂停,再点击播放。
- MATLAB复数相关运用
- SpringBoot邮件发送(抄送、密送、图片、多文件等一应俱全哦)
- Servlet中forward和redirect的区别(转)
- 浅谈对dao层的理解
- 折半查找法(二分搜索法)