1、华清远见嵌入式学院第一学期期中考试一、选择题(20 题,共 44 分 )1. 常见的 Linux 发行版本有很多,下面不是 Linux 发行版本的是( )。A Red Hat Linux B Ubuntu Linux C X Window D SuSE Linux 2. 下面不是对 Linux 操作系统特点描述的是( )。A 良好的可移植性 B 单用户 C 多用户 D 多任务3. 下面( )命令不能用来显示文件的内容。A more B less C find D cat4. 查看创建目录命令 mkdir 的帮助文档,可以使用命令( )。A mkdir h B help mkdir C mkdi
2、r -p D man mkdir5. 假设目录中存在若干文件 file_num.txt(num 表示文件编号,110) ,使用以下( )通配符可以挑选出其中的编号为 1、3、 5 的文件。A file_*.txt B flie_?.txt C file_135.txt D file_135.txt6. 文件权限 r-x-wxr-对应的八进制表示形式为 ( )A 0536 B 0654 C 0656 D 0534 7. 在 C 语言中,要求运算数必须是整型的运算符是( )。A / B + C != D %8. C 语言中,逻辑“真”等价于( )。A 大于零的数 B 大于零的整数 C 非零的数 D
3、 非零的整数9. 目前流行的两种软件包管理机制,Debian 使用( )软件包,Redhat 使用( )软件包。A tgz B rpm C tar D deb10. 下面函数的功能是( )。int fun (char*x)char*y=x;while(*y+);return(y-x-1);A 求字符串的长度B 比较两个字符串的大小C 将字符串 x 复制到字符串 yD 将字符串 x 连接到字符串 y 后面11. C 语言程序的三种基本程序是( )。A 顺序结构,选择结构,循环结构B 递归结构,循环结构,转移结构C 嵌套结构,递归结构,顺序结构D 循环结构,转移结构,顺序结构12. 执行下面语句后
4、的输出结果为( )。int i = -1;if (i int main(void)char s80 ;int i, j ;gets(s) ;for ( i = j = 0 ; s i != 0 ; i+ )if ( s i != c );s j = 0 ;puts ( s ) ;return 0 ;A s j+ = s i B s +j = s i C s j = s i ; j+ D s j = s i 18. 下面程序的功能是将已按升序排好序的两个字符串 a 和 b 中的字符,按升序归并到字符串 c 中,请为程序中的空白处选择适当的语句。 #include int main(void)ch
5、ar a = “acegikm”;char b = “bdfhjlnpq”;char c80, *p;int i = 0, j= 0, k = 0;while( ai != 0 int (*p)4, i, j;p = a;scanf(“%d,%d”,printf(“%dn”, *(*(p+i)+j);return 0;4. shell 脚本的本质是( 命令行解释器 )。5. gcc 的编译步骤按先后顺序分别为( 预处理,编译,链接,运行 )。6. make 工程管理器根据( 文件的时间戳 )来自动发现更新过的文件从而减少编译的工作量。四、简答题(2 题,每题 5 分,共 10 分)1. She
6、ll 是 Linux 内核与硬件的外部保护层,请在下图中标出 Shell、Linux 内核、硬件的位置,并简要介绍三者的交互过程。LINUX shell linux 内核 硬件2. 大多 Linux 文件系统目录结构都遵循一定的标准,请根据右侧的目录职能描述,将左侧目录名连线。/home E A:存放系统中最常用的可执行文件(二进制)/root H B:存放 Linux 内核和系统启动文件,包括 Grub、lilo 启动器程序/dev C C:存放所有设备文件,包括硬盘、分区、键盘、鼠标、USB 、tty 等/mnt F D:存放系统的所有配置文件,例如 passwd 存放用户账户信息,hos
7、tname 存放主机名等/boot B E:用户主目录的默认位置/etc D F:该目录通常用于作为被挂载的文件系统的挂载点/bin A H:根用户(超级用户)的主目录五、编程题(3 题,第 1 题 6 分,2/3 每题 7 分,共 20 分)用 户 1 控 制 ? ?交 互 ?控制控 制用 户 2用 户 n.1. 打印出所有的“水仙花”数。所谓“水仙花”数是指一个 3 位数,其各个位数字立方和等于该数本身。2. 下面 findmax 函数将计算数组中的最大元素及其下标值,请编写该函数。#include void findmax ( int s , int t, int *k )Int i;int main (void)int a10 = 12, 23, 34, 45, 56, 67, 78, 89, 11, 22, k=0;findmax ( a, 10, printf ( “ 最大元素为:%d, 其下标值为:%dn”, ak, k );return 0;3. 打印杨辉三角形前 10 行。 (提示:定义数组 a1010)11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 1