Linux及C考试题附答案

合集下载

嵌入式Linux C语言应用开发试题及答案

嵌入式Linux C语言应用开发试题及答案

嵌入式Linux C语言应用开发试题及答案一:选择题1.下面不是对Linux操作系统特点描述的是( B )。

[A] 良好的可移植性[B] 单用户[C] 多用户[D] 多任务2.查看创建目录命令mkdir的帮助文档,可以使用命令( D)。

[A] mkdir –h [B] help mkdir [C] mkdir -p [D] man mkdir3.在C语言中,要求运算数必须是整型的运算符是( D )。

[A] / [B] ++ [C] != [D] %4.C语言程序的三种基本程序是( A )。

[A] 顺序结构,选择结构,循环结构[B] 递归结构,循环结构,转移结构[C] 嵌套结构,递归结构,顺序结构[D] 循环结构,转移结构,顺序结构5.数据结构包含的内容不包括(a)A.线性结构B.存储结构C.逻辑结构D.数据运算6.向一个单链表linklist中的节点t后面插入一个节点p,下列操作正确的是(a)A.p->next = t->next;t->next = p;B.t->next = p->next;t->next = p;C.t->next = p;p->next = t->next;D.t->next = p;t->next = p->next;7.下列哪种打开文件的方式不能修改文件已有的内容( B )[A] r+ [B] r [C] w+ [D] a+8.以下哪种不是进程的状态( B )[A] 运行态[B] 锁定态[C] 睡眠态[D] 停止态9.常用来进行多任务同步的机制是( B )[A]管道[B] 信号量[C]信号[D]共享内存10.下列对于有名管道描述错误的是( D )[A] 可以用于互不相关的进程间[B] 通过路径名来打开有名管道[C] 在文件系统中可见[D] 管道内容保存在磁盘上11.不能被用户进程屏蔽的信号是( B )[A] SIGINT [B] SIGSTOP [C] SIGQUIT [D] SIGILL12.fread()返回值的含义是( B )[A] 读取的字节数[B] 读取的对象数[C] 缓冲区的首地址[D] 013.以下不属于socket的类型的是 ( )。

Linu期末考试复习试题含答案

Linu期末考试复习试题含答案

Linu期末考试复习试题含答案Linux期末考试复习试题含答案一、单项选择题1. 下列哪个命令可以用于在Linux系统中创建文件夹?a) mvb) cpc) rmd) mkdir答案:d) mkdir2. 下列哪个命令可以用于在Linux系统中显示当前工作目录?a) lsb) cdc) pwdd) grep答案:c) pwd3. 在Linux系统中,以下哪个命令用于将文件内容打印到终端上?a) catb) echoc) lessd) head答案:a) cat4. 在Linux系统中,要将一个文件copy至另一个目录,可以使用以下哪个命令?a) cpb) mvc) rmd) mkdir答案:a) cp5. 在Linux系统中,以下哪个命令可以用于查找某个文件或目录?a) findb) grepc) lsd) touch答案:a) find二、填空题1. 在Linux系统中,修改文件权限的命令是 _________。

答案:chmod2. 在Linux系统中,以管理员身份运行命令的命令是 _________。

答案:sudo3. 在Linux系统中,将某个文件重命名的命令是 _________。

答案:mv4. 在Linux系统中,创建一个空文件的命令是 _________。

答案:touch5. 在Linux系统中,以当前用户身份切换至另一个用户的命令是_________。

答案:su三、简答题1. 请解释Linux系统中的"root"用户是什么意思,以及它的作用。

答案:在Linux系统中,"root"用户是超级用户,拥有系统中所有权限的特殊用户。

它的作用是可以对系统进行完全的控制和管理,可以更改系统的核心设置,安装和卸载软件,以及对其他用户和文件进行操作。

2. 请简要介绍Linux系统中的三种常见文件权限,并解释每种权限的具体含义。

答案:- 读权限(r): 允许用户查看文件的内容或者读取目录中的文件列表。

嵌入式linux c开发常见笔试题目

嵌入式linux c开发常见笔试题目

嵌入式Linux C开发的常见笔试题目主要围绕C语言基础、Linux操作系统以及嵌入式系统开发等方面。

以下是一些可能的笔试题目:
1. 请解释C和C++的主要区别。

2. 描述一下静态变量和全局变量在内存中的分配情况。

3. 解释一下什么是预处理器以及它的主要作用。

4. 编写一个程序,实现两个整数的交换而不使用第三个变量。

5. 描述一下进程和线程的区别以及它们之间的关系。

6. 什么是死锁?请列举至少两种导致死锁的情况。

7. 请解释一下中断处理程序的工作原理。

8. 如何在Linux中创建一个新进程?
9. 描述一下Linux中的同步和异步机制。

10. 什么是RTOS?请列举至少两个RTOS的例子。

Linux操作系统下的C语言开发环境搭建测试题

Linux操作系统下的C语言开发环境搭建测试题

Linux操作系统下的C语言开发环境搭建测试题(答案见尾页)一、选择题1. Linux操作系统下,C语言开发环境的搭建需要以下哪些步骤?A. 安装GCC编译器B. 设置环境变量C. 编译和运行C程序D. 配置终端2. 在Linux操作系统中,以下哪个命令可以用来编译和运行C程序?A. gccB. g++C. chmodD. make3. 在Linux操作系统中,如何修改默认的编译器路径?A. 修改PATH环境变量B. 使用export命令C. 编辑/etc/profile文件D. 修改gcc的配置文件4. 在Linux操作系统中,安装了GCC编译器后,如何验证其安装成功?A. 输入gcc --version命令B. 输入gcc -v命令C. 输入gcc --configure命令D. 输入gcc -E命令5. 在Linux操作系统中,如何配置终端以方便进行C语言编程?A. 更改终端的提示符B. 安装tmux或screen工具C. 配置bashrc文件6. 在Linux操作系统中,如何使用GDB调试器调试C程序?A. 安装gdb软件包B. 编译程序时添加-g选项C. 使用gdb命令启动程序D. 查看程序内存布局7. 在Linux操作系统中,如何查看源代码文件的内容?A. 使用cat命令B. 使用less命令C. 使用grep命令D. 使用find命令8. 在Linux操作系统中,如何使用vi编辑器编辑C语言源代码文件?A. 进入vi编辑器B. 编辑文件内容C. 保存文件并退出vi编辑器D. 检查文件是否已保存9. 在Linux操作系统中,如何通过FTP上传和下载文件?A. 使用ftp命令B. 使用sftp命令C. 使用scp命令D. 使用ls命令10. 在Linux操作系统中,如何设置用户权限以确保C语言源代码的安全?A. 使用chmod命令B. 使用chown命令C. 使用umask命令D. 使用acl命令11. Linux操作系统下,C语言开发环境的搭建需要以下哪些步骤?B. 设置环境变量C. 配置编译选项D. 编译和运行C程序12. 在Linux系统下,如何修改一个文件的权限使其可读可写?A. chmod 666 filenameB. chmod 777 filenameC. chmod 644 filenameD. chmod 755 filename13. 在Linux系统下,使用以下哪个命令可以查看文件的详细信息,如文件大小、创建日期等?A. ls -lB. df -hC. tar -xvf file.tarD. stat filename14. 在Linux系统下,如何使用vi编辑器打开一个文件?A. vi filenameB. vim filenameC. nano filenameD. emacs filename15. 在Linux系统下,安装了GCC编译器后,如何验证其是否正确安装?A. echo $PATHB. which gccC. gcc --versionD. all of the above16. 在Linux系统下,如何创建一个新的目录并进入该目录?A. mkdir new_directoryB. cd new_directoryC. rmdir new_directoryD. mkdir -p new_directory17. 在Linux系统下,如何使用grep命令在文本中搜索特定的字符串?A. grep "search_string" filenameB. grep "search_string" filename | lessC. grep "search_string" filename | moreD. all of the above18. 在Linux系统下,如何修改一个文件的换行符为LF(Unix风格)?A. dos2unix filenameB. unix2dos filenameC. cat filename | tr '' '' > filenameD. all of the above19. 在Linux系统下,如何使用find命令查找特定文件?A. find / -name "filename_pattern"B. find . -type f -name "filename_pattern"C. find / -name "filename_pattern" -printD. all of the above20. Linux操作系统下,C语言开发环境的搭建需要以下哪些步骤?A. 安装编译器B. 配置编译环境变量C. 安装文本编辑器D. 编写、编译和运行C源代码21. 在Linux操作系统下,以下哪个命令可以用来编译和运行C语言源代码?A. gccB. g++C. chmodD. make22. 在Linux操作系统下,以下哪个命令可以用来安装一个新的C语言库?A. apt-getB. yumC. pacman23. 在Linux操作系统下,以下哪个命令可以用来查看源代码的层次结构?A. catB. grepC. treeD. less24. 在Linux操作系统下,以下哪个命令可以用来创建一个新目录?A. mkdirB. rmdirC. touchD. cp25. 在Linux操作系统下,以下哪个命令可以用来删除一个文件?A. rmB. mvC. rmdirD. cp26. 在Linux操作系统下,以下哪个命令可以用来复制文件或目录?A. cpB. mvC. rmD. ln27. 在Linux操作系统下,以下哪个命令可以用来查看文件的内容?A. catB. grepC. lessD. head28. 在Linux操作系统下,以下哪个命令可以用来查找文件?A. findB. locateD. man29. 在Linux操作系统下,以下哪个命令可以用来查看当前目录的内容?A. lsB. cdC. pwdD. man30. Linux操作系统下,C语言开发环境的搭建需要哪些步骤?A. 安装GCC编译器B. 配置内核头文件C. 安装文本编辑器D. 配置终端环境31. 在Linux操作系统下,如何验证C语言编译成功?A. 编译一个简单的C源代码,观察是否有语法错误B. 使用命令行进入编译后的目录,查看生成的可执行文件C. 在终端中输入编译命令,观察是否有错误信息D. 将编译后的程序在另一个系统中运行,检查功能是否实现32. Linux操作系统下,C语言开发常用的文本编辑器有哪些?A. VimB. EmacsC. nanoD. Kate33. 在Linux操作系统下,如何配置终端环境以便于C语言编程?A. 设置默认编码为UTF-8B. 配置PATH环境变量,确保编译器路径已添加C. 安装并配置版本控制工具(如Git)D. 配置别名,提高编程效率34. 在Linux操作系统下,C语言开发中常用的调试工具有哪些?A. GDB调试器B. DDD调试工具C. Valgrind内存检测工具D. printf()函数调试35. Linux操作系统下,C语言开发环境的搭建过程中,如何配置网络连接?A. 修改网络配置文件,设置静态IP地址B. 关闭防火墙,确保端口畅通C. 配置DNS服务器,解析域名D. 使用Wireshark工具监控网络流量36. 在Linux操作系统下,C语言开发环境中,如何管理项目文件?A. 使用版本控制工具(如Git)进行项目管理B. 使用文件系统树形结构管理项目文件C. 使用目录和文件名来管理项目文件D. 使用标签系统管理项目文件37. Linux操作系统下,C语言开发环境的搭建完成后,如何优化编译速度?A. 升级GCC编译器到最新版本B. 优化编译选项,减少编译时间C. 使用增量编译,避免重复编译D. 使用并行编译,提高编译速度38. 在Linux操作系统下,C语言开发环境的搭建过程中,如何安装必要的库文件?A. 使用包管理器(如apt或yum)安装库文件B. 从官方网站下载库文件并手动安装C. 从源代码编译库文件并安装D. 使用静态链接库文件,减少动态链接的内存开销39. Linux操作系统下,C语言开发环境的搭建完成后,如何进行代码测试和调试?A. 使用GDB调试器进行单步调试B. 使用DDD调试工具查看内存状态C. 使用printf()函数打印变量值进行调试D. 使用单元测试框架进行自动化测试40. Linux操作系统下,C语言开发环境的搭建需要以下哪些步骤?A. 安装GCC编译器B. 配置环境变量C. 安装文本编辑器D. 编译和运行C程序41. 在Linux操作系统下,以下哪个命令可以用来查看系统中的所有进程?A. ps -efB. topC. freeD. all42. 在Linux操作系统下,如何修改一个文件的权限使得文件所有者具有读写权限,其他用户只具有读权限?A. chmod 644 filenameB. chmod 755 filenameC. chmod 664 filenameD. chmod 777 filename43. 在Linux操作系统下,使用以下哪个命令可以查看当前目录下的隐藏文件?A. ls -aB. ls -lC. ls -hD. ls -d44. 在Linux操作系统下,如何安装一个新软件包?A. apt-get updateB. yum install package_nameC. pacman -S package_nameD. brew install package_name45. 在Linux操作系统下,如何使用grep命令查找包含特定字符串的文件?A. grep "search_string" filenameB. grep "search_string" /path/to/filenameC. grep "search_string" $(find /path/to/search -type f)D. grep "search_string" /path/to/search/*46. 在Linux操作系统下,如何修改文件的所有者和组?A. chown new_owner:new_group filenameB. chown new_owner:new_group /C. chown new_owner:new_group *D. chown new_owner:new_group .47. 在Linux操作系统下,如何创建一个新的用户组?A. groupadd group_nameB. groupadd -g GID group_nameC. groupadd -G GID group_nameD. groupadd -p group_name48. 在Linux操作系统下,如何设置Shell提示符?A. export PS1="\u@\h:\w\$ "B. export PS1="\u@\h:\w\$ "C. export PS1="\u@\h:\w\\$ "D. export PS1="\u@\h:\w\$ "二、问答题1. 请简述在Linux操作系统下搭建C语言开发环境的步骤。

Linux程序员(C语言)考证题库

Linux程序员(C语言)考证题库

Linux程序员(C语言)考证题库一、单项选择题1.Linux的根分区的文件系统类型是C。

A.FAT16B.FAT32C.ext3D.NTFS2.安装好Linux操作系统后,系统默认的超级用户(系统管理员)账号是C。

A.administratorB.guestC.rootD.boot3.Linux文件系统的文件都按其作用分门别类地放在相关的目录中,对于外部设备文件,一般应将其放在C目录中。

A./binB./etcC./devD./lib4.Linux有三个查看文件的命令,若希望在查看文件内容过程中,可以用光标上下移动来查看文件内容,应使用C命令。

A.catB.moreC.lessD.menu5.可以为文件或目录重命名的命令是C。

A.mkdirB.rmdirC.mvD.rm6.已知某用户stud1,其用户目录为/home/stud1。

如果当前目录为/home,进入目录/home/stud1/test的命令是:C。

A.cd testB.cd/stud1/testC.cd stud1/testD.cd home7.Linux文件权限一共10位长度,分成四段,第三段表示的内容是C。

A.文件类型B.文件所有者的权限C.文件所有者所在组的权限D.其他用户的权限8.将Windows C:盘(hda1)安装在Linux文件系统的/winsys目录下,命令是B。

A.mount–t vfat dev/hda1/winsysB.mount–t vfat/dev/hda1/winsysC.mount–t vfat/dev/hda1winsysD.mount–t vfat dev/hda1winsys9.一般情况下,系统启动过程自动加载的文件系统信息是存放在文件D中A./usr/sbin/cfdiskB./sbin/fdiskC./etc/mtabD./etc/fstab10.系统中有用户user1和user2,同属于users组。

Linux考试试题100道(附答案)

Linux考试试题100道(附答案)

Linux考试试题100道(附答案)1、Linux系统中,用户文件描述符0 表示______。

A.标准输入设备文件描述符B.标准输出设备文件描述符B.管道文件描述符 D.标准错误输出设备文件描述符答案:A2、以长格式列目录时,若文件test的权限描述为:drwxrw-r–,则文件test的类型及文件主的权限是______。

A.目录文件、读写执行B.目录文件、读写C.普通文件、读写D.普通文件、读答案:A3、当字符串用单引号(’’)括起来时,SHELL将______。

A.解释引号内的特殊字符B.执行引号中的命令C.不解释引号内的特殊字符D.结束进程答案:C4、/etc/shadow文件中存放______。

A.用户账号基本信息B.用户口令的加密信息C.用户组信息D.文件系统信息答案:B5、若当前目录为/home,命令ls–l 将显示home 目录下的()。

A.所有文件B.所有隐含文件C.所有非隐含文件D.文件的具体信息答案:D6、为卸载一个软件包,应使用_____。

A.rpm -iB.rpm -eC.rpm -qD.rpm -V答案:B7、下面关于文件“/etc/sysconfig/network-scripts/ifcfg-eth0”的描述哪个是正确的?( )。

A.它是一个系统脚本文件B.它是可执行文件C.它存放本机的名字D.它指定本机eth0的IP地址答案:D8、如何快速切换到用户John的主目录下?( )A.cd @JohnB.cd #JohnC.cd &JohnD.cd ~John答案:D9、启动DNS服务的守护进程()A. httpd startB.httpd stopC. named startD. named stop答案:C10、Linux有三个查看文件的命令,若希望在查看文件内容过程中可以用光标上下移动来查看文件内容,应使用命令()A.cat B. more C. less D. menu答案:C11、在LINUX中,要查看文件内容,可使用()命令。

linux 试题及答案

linux 试题及答案

linux 试题及答案第一部分:选择题1. Linux 是一种()操作系统。

a) 开源b) 闭源c) 商业d) 私有答案:a) 开源2. 在 Linux 中,用于显示当前所在路径的命令是()。

a) pwdb) lsc) cdd) cp答案:a) pwd3. 在 Linux 中,用于创建目录的命令是()。

a) mkdirb) touchc) rmd) mv答案:a) mkdir4. Linux 中,用于列出当前目录下的文件和文件夹的命令是()。

a) lsb) cdc) pwdd) rm答案:a) ls5. 在 Linux 中,用于复制文件的命令是()。

a) cpb) mvc) touchd) mkdir答案:a) cp第二部分:填空题1. Linux 操作系统的核心部分被称为()。

答案:内核2. Linux 中,用于修改文件或目录的权限的命令是()。

答案:chmod3. 在 Linux 中,用于压缩文件的命令是()。

答案:tar4. Linux 是基于()开发的操作系统。

答案:UNIX5. Linux 中,默认的超级用户账户是()。

答案:root第三部分:简答题1. 什么是 Linux 操作系统?答:Linux 是一种开源操作系统,它基于 UNIX 操作系统开发而成。

Linux 以其稳定性、可定制性和安全性而闻名,并广泛运用于服务器和嵌入式设备等领域。

2. 如何在 Linux 中创建一个新用户?答:可以使用 `useradd` 命令来创建一个新用户,例如 `useradd -m newuser`。

其中,`-m` 参数表示同时创建用户的主目录。

3. 如何修改文件的访问权限?答:可以使用 `chmod` 命令来修改文件的访问权限。

例如,要将文件的所有者权限设置为可读可写可执行,可以使用 `chmod u+rwx filename` 命令。

4. 如何在 Linux 中安装软件包?答:可以使用包管理器,如 `apt` (用于 Debian 系统)或 `yum` (用于 Red Hat 系统),来安装软件包。

linux期末考试题及答案

linux期末考试题及答案

linux期末考试题及答案Linux期末考试题及答案一、选择题(每题2分,共20分)1. Linux操作系统属于以下哪种类型?A. 单用户单任务操作系统B. 多用户多任务操作系统C. 单用户多任务操作系统D. 多用户单任务操作系统答案:B2. 在Linux系统中,以下哪个命令用于查看当前目录下的文件和文件夹?A. lsB. pwdC. cdD. mkdir答案:A3. 如果需要查看一个文件的内容,但不修改它,可以使用以下哪个命令?A. catB. viC. rmD. mv答案:A4. 在Linux中,以下哪个命令可以显示当前系统的运行时间、用户数、系统负载等信息?A. topB. psC. uptimeD. who答案:C5. Linux系统中的文件权限分为哪三类?A. 可读、可写、可执行B. 可读、可写、可删除C. 可读、可写、可链接D. 可读、可写、可打印答案:A...20. 在Linux系统中,以下哪个命令用于解压tar.gz格式的压缩文件?A. tar -xzvfB. gzip -dC. gunzipD. tar -zxvf答案:D二、填空题(每空2分,共20分)1. Linux系统中的文件系统是以_________为节点组织的。

答案:inode2. 在Linux中,使用_________命令可以切换到root用户。

答案:su3. 要查看当前路径,可以使用命令_________。

答案:pwd4. 如果需要递归地复制一个目录到另一个位置,并覆盖原有文件,可以使用命令_________。

答案:cp -r5. 在Linux中,文件权限的数字表示方法中,7表示_________。

答案:可读可写可执行...10. 使用_________命令可以查看当前系统的磁盘使用情况。

答案:df三、简答题(每题10分,共30分)1. 简述Linux系统中的文件类型有哪些,并给出每种类型的代表字符。

答案:Linux系统中的文件类型主要有以下几种:- 普通文件:-- 目录:d- 符号链接:l- 块设备文件:b- 字符设备文件:c- 管道:p- 套接字:s2. 解释什么是Linux的硬链接和软链接,并说明它们的区别。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

华清远见嵌入式学院《Linux及C》考试题(A卷)1-5 CBCDB6-10 DBADD11-15 CCCAA16-20 C ADD C D A21-23 DBA一、选择题(23题,每空2分,共46分)1.常见的Linux发行版本有很多,下面不是Linux发行版本的是( C)。

[A] Red Hat Linux [B] Ubuntu Linux [C] unix [D] 红旗2.下面不是对Linux操作系统特点描述的是( B )。

[A] 良好的可移植性 [B] 稳定性低 [C] 多用户 [D] 多任务3.嵌套创建目录的命令可以使用( C )。

[A] mkdir –h [B] help mkdir [C] mkdir -p [D] man mkdir4.假设目录中存在若干文件file_num.txt(num表示文件编号,1~8),使用以下( D )通配符可以挑选出其中的编号为1、2、3、5、6、7的文件。

[A] file_*.txt [B] flie_?.txt [C] file_[1-7].txt [D] file_[^48].txt5.文件权限 r-x-w-r--对应的八进制表示形式为( B )[A] 0536 [B] 0524 [C] 0656 [D] 05346.目前流行的两种软件包管理机制,Debian使用( D )软件包。

[A] zip [B] rpm [C] tar [D] deb7.下述程序第二次的输出结果为( B )。

int main(void){extern int a;int b=0;static int c;a+=3;other();b+=3;other();}int a=5;other(){int b=3;static int c=2;a+=5; b+=5; c+=5;printf("%d,%d,%d\n",a,b,c);c=b;}[A] 13,0,13 [B] 18,8,13 [C] 13,8,13 [D] 18,8,08.C语言程序的三种基本程序是( A )。

[A] 顺序结构,选择结构,循环结构[B] 递归结构,循环结构,转移结构[C] 嵌套结构,递归结构,顺序结构[D] 循环结构,转移结构,顺序结构9.执行下面语句后的输出结果为( D )。

int i = -1;if (i < =0){}printf(“****\n”);i = 2;elsep rintf(“%%%%\n”);[A] 乱码 [B] %% [C] %%%% [D] 有语法错误,不能正确执行10.在C语言中,要求运算数必须是整型的运算符是( D )。

[A] / [B] ++ [C] != [D] %11.下面的程序运行结果为( C )。

char *RetMenory(void){char p[] = “hello world”;return p;}void Test(void){char *str = NULL;str = RetMemory();puts(str);}[A] 语法有错误,不能编译 [B] hello world [C]结果不可预知 [D] hello world+乱码12.下述程序的输出结果是( C )。

int main(void){int Y=100;while(Y--);printf(“Y=%d”,Y);}[A] Y=0 [B] Y=1 [C] Y=-1 [D] Y=随机数13.结构体DATA定义如下,则sizeof(struct DATA)的值为( C )。

struct DATA{float f1;int i;char c2;};[A] 6 [B] 8 [C] 12 [D] 1614.以下程序的功能是将字符串s中所有的字符c删除,那么空白处缺少的语句为:( A )。

#include <stdio.h>int main(void){char s[80]; abd abd\0int i, j; s[2] = s[3] = ‘d’gets(s);for ( i = j = 0; s [i]!= ‘\0’; i++ ){if ( s [i]!= ‘c’ )S[j++] = s[i] ;}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 ]15.下面函数的功能是( A )。

int fun (char*x){char*y=x;while(*y++);return(y-x-1);}[A] 求字符串的长度[B] 比较两个字符串的大小[C] 将字符串x复制到字符串y[D] 将字符串x连接到字符串y后面16./* Address */unsigned short *a = (unsigned short *)0x800;unsigned short *b= a+1;b = ? ( C )[A] 0x800 [B] 0x801 [C] 0x802 [D] 0x80417.下面程序的功能是将已按升序排好序的两个字符串a和b中的字符,按升序归并到字符串c中,请为程序中的空白处选择适当的语句。

#include <stdio.h>int main(void){char a[ ] = “acegikm”;char b[ ] = “bdfhjln pq”;char c[80], *p;int i = 0, j= 0, k = 0;while( a[i] != ’\0’ && b[j] != ‘\0’ ){if ( a[i] < b[j] ) { ( ① ) } Aelse { ( ② ) } Dk++;}c[k] = ‘\0’;if ( ③ ) p = b + j; Delse p = a + i;strcat ( c , p );puts ( c );}① [A] c[k] = a[i]; i++; [B] c[k] = b[j]; i++;[C]c[k] = a[i]; j++; [D] c[k] = a[j]; j++;② [A] c[k] = a[i]; i++; [B] c[k] = b[j]; i++;[C] c[k] = a[i]; j++; [D] c[k] = b[j]; j++;③ [A] a[i] = ‘\0’[B] a[i] != ‘\0’[C] b[j] = ‘\0’[D] b[j] != ‘\0’18.若要将当前目录中的myfile.txt文件压缩成myfile.txt.tar.gz,则实现的命令为( C)。

[A] tar -cvf myfile.txt myfile.txt.tar.gz [B] tar -cjf myfile.txt myfile.txt.tar.gz[C] tar -czf myfile.txt.tar.gz myfile.txt [D] tar -cxf myfile.txt.tar.gz myfile.txt19.在一个C源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使用的存储类别是( D )。

[A] extern [B] register [C] auto [D] static20.下面的代码输出是( A )void foo(void){unsigned int a=6;int b=-20;(a+b>6)?puts(">6"):puts("<=6");}[A] >6 [B] <=621.假设文件fileA的符号链接为fileB,那么删除fileA后,下面的描述正确的是( D )。

[A].fileB没有任何影响[B].因为fileB未被删除,所以fileA会被系统自动重新建立[C].fileB会随fileA的删除而被系统自动删除[D].fileB仍存在,但是属于无效文件22.以下程序的运行结果为( B )void sub(int x, int y, int *z){*z = y – x;}int main(void){int a,b,c;sub(10, 5, &a);sub(7, a, &b);sub(a, b, &c);printf( “%4d,%4d,%4d\n”,a,b,c);}[A] 5, 2, 3 [B] -5, -12, -7 [C] -5, -12, -17 [D] 5, -2, -723、一位法官在审理一起盗窃案中,对涉及到的四名嫌疑犯甲、乙、丙、丁进行了审问。

四人供述如下:甲说:“罪犯在乙、丙、丁三人之中。

”乙说:“我没有做案,是丙偷的。

”丙说:“在甲和丁中间有一人是罪犯。

”丁说:“乙说的是事实。

”经过充分的调查,证实这四人中有两人说了真话,另外两人说的是假话。

那么,请你对此案进行裁决,确认谁是罪犯?( A )[A]、乙和丁是盗窃犯[B]、乙和丙是盗窃犯[C]、乙是盗窃犯[D]、甲和丁是盗窃犯二、填空题(每空2分,共14分)1. 对文件file创建一个符号链接link( ln –s file link )。

2. 若有以下定义和语句,则*p[0]引用的是a数组元素中的( a[0] ),*(p[1]+1)引用的是a数组元素中的( a[3] )。

int *p[3], a[6], i;for( i = 0; i < 3; i++) p[i] = &a[2*i];3. 若有以下输入(<CR>代表回车换行符),则下面程序的运行结果为( 7 )。

1,2<CR>int main(void){int a[3][4] = {1,2,3,4,5,6,7,8,9,10,11,12};int (*p)[4], i, j;p = a;scanf(“%d,%d”,&i,&j);printf(“%d\n”, *(*(p+i)+j));return 0;}4. shell脚本的本质是( shell命令的有序集合 )。

5. 将历史纪录追加到文件file.txt内( history >> file.txt )。

6. make工程管理器根据( 时间戳 )来自动发现更新过的文件从而减少编译的工作量。

三、简答题(2题,每题5分,共10分)1、下面findmax函数将计算数组中的最大元素及其下标值,请编写该函数。

#include <stdio.h>void findmax ( int s[ ], int t, int *k ){}int main (void){int a[10] = {12, 23, 34, 45, 56, 67, 78, 89, 11, 22}, k;findmax ( a, 10, &k );printf ( “最大元素为:%d, 其下标值为:%d\n”, a[k], k );return 0;}2、现在有一个简单的工程项目,由main.c fun.c 和fun.h三个文件组成。

相关文档
最新文档