姓名: 学校: 专业:通信工程 阅卷人: 得分:
一、单项选择题(每题5分,共25分)
1、下列程序段的输出结果是( c )
#include <stdio.h>
void main()
{
int a = 6, b = 4;
a += a - b;
b *= a = a + b;
printf("%d, %d\n", a%2, b);
}
A: 6, 48 B: 4, 32 C: 0, 48 D: 6, 32
2、在Ubuntu操作系统中,我刚刚执行了 " dpkg -i text_1.2.3-4_all.deb " 命令安装了一个名为text的软件包,现在要将其卸载干净,应该执行以下哪条命令( D )
A: rm -rf text*
B: rpm -e text
C: yum remove text
D: dpkg -P text
3、改变文件所有者的命令为( C )
A: chmod B:chcon C:chown D:chgrp
4、你使用命令 " vim /etc/ssh/sshd_config " 查看该文件的内容,你不小心改动了一些内容,为了防止系统出问题,你不想保存所修改的内容,你应该如何操作( A )
A:在末行模式下,键入 " q! "
B:在命令行模式下,键入 " q! "
C:在可视模式下,键入 " q! "
D:在编辑模式下,按下ESC键后,键入 " :wq! "
5、在bash中,在一条命令后加入 " 1>&2 " 意味着( )
A:标准错误输出重定向到标准输入 B:标准输出重定向到标准错误输出
C:标准输入重定向到标准错误输出 D:标准输出重定向到标准输入
二、填空题(每题5分,共25分)
1、下列程序段的输出结果是__ _____________________
#!/bin/bash
var="Welcome to Linux OS"
echo ${var:11:5}
- 解压 text.tar.gz 文件,需要执行命令:_gunzip text.tar.gz.gz__
3、bash中, " $? " 代表什么:_获取上一句命令是否正确执行的结果_
4、修改全局环境变量,应该修改什么文件:_ _____________________________________
三、简答题(每题10分,共20分)
1、简述C语言中使用 < > 和 “ ” 引用头文件的区别。
include <>是在标准库目录下查找头文件,“”先到指定目录下查找头文件,若找不到,则到标准库目录下查找头文件。
2、简述队列和栈的区别。
四、程序设计(每题10分,共30分)
1、使用C语言编写一段程序,实现从1开始以每秒累加1的方式向终端打印数字,写到100后停止。要求代码格式规范,输出结果清晰易懂。 提示:sleep(1)
#include <stdio.h>
#include <unistd.h>
int main(int argc,const char *argv)
{
Int i
for(i=1;i<=100;i++)
{
Sleep(1);
printf(“%d\t”,i)
}
return 0;
}
- 现有一 /tmp/test 目录,其中存放了许多压缩包,共tar.gz和zip两种格式。编写一个shell脚本,遍历该目录下的所有压缩包,将每个压缩包中包含的文件信息单独输出到各自以压缩包名称命名、后缀为 .log 的文件中,最后将生成的所有文件汇总打包成一个名为 compress.tar.g
- 使用C语言或者shell,编写一个程序,提取字符串 " Depends: libc6 (>= 2.2.5), libncurses5 (>= 6), libtinfo5 (>= 6) " 中的libc6、libncurses5、libtinfo5。