《《嵌入式Linux应用程序设计》复习题.doc》由会员分享,可在线阅读,更多相关《《嵌入式Linux应用程序设计》复习题.doc(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、.一、选择题1.下面哪个命令是用来定义shell的全局变量( D )A. exportfsB. aliasC. exportsD. export2. 将当前目录下的文件shell.sh移动到目录/home/linux下的命令为 B 。 A. cp shell.sh /home/linux B. mv shell.sh /home/linuxC. lls shell.sh / home/linux/shell.sh D. mv /root/shell.sh /home/linux/shell.sh3.如果要列出一个目录下的所有文件需要使用命令行( C )。A. ls lB. ls-tC. ls
2、aD. ls d4.Linux 下Makefile文件中,表示第一个依赖目标的系统变量是(C )A.$ B.$* C.$ D.$#5.32位系统下,定义一个指向字符类型的变量 short i,那么sizeof(i)的值是( b )A.1B.2C.3D.46.在用ls l 查看文件属性时,字符设备文件类型的标志是( A )A.cB.bC.s D.l7. 在linux下进行shell编程时,注释符是 A 。A. #B. /C. /* */ D. 以上都不对8. 任何时候用户需要回到用户主目录时可以使用命令 A 。A. cd B. pwd C. path D. cd .9. 下列属于文件包含的命令是
3、_C_。 A. #define N 25B. #endif C. #include stdio.hD. #else10. 下列关于Linux安装的说法中,不正确的是 C 。A.如果计算机的内存为128MB,则SWAP分区(交换分区)的大小通常设定为256M。B.安装时Linux分区的文件系统类型一般为ext2或ext3。C.安装时要进行磁盘分区,如果选择“自动分区”,系统会自动保留硬盘上原来的数据。D.Linux除了可以从光盘安装外,还可以从网上下载Linux的iso映像文件,从硬盘安装。11. 下列说法中,不正确的是 A 。A. Shell程序编写完后还需要用gcc编译器编译。B.可以通过将
4、shell程序作为sh命令的输入来执行shell程序。C. shell程序中定义的函数不能有参数。D. Linux是免费使用和自由传播的类UNIX操作系统,但它并不是没有版权。12.下列的各类函数中,不是类的成员函数。(C)A)构造函数 B)析构函数 C)友元函数 D) 拷贝初始化构造函数13.作用域运算符“:”的功能是:(D )A 标识作用域的级别的 B指出作用域的范围的 C给定作用域的大小的 D标识成员是属于哪个类的14.下列说明中const char *ptr;其中 ptr应该是:(A)A 指向字符常量的指针 B指向字符的常量指针 C 指向字符串常量的指针 D指向字符串的常量指针16.已
5、知: int n=10000;下列表示引用的方法中,正确的是:( C ) A int &Z; B int &t=10; C int &X=n; D)float &f=&n; 二.判断题1.Linux init 启动进程需要读取的系统配置文件是/etc/inittab。( )2.Linux下令某个进程在后台运行,可在此命令后面加符号 &。 ()3.如果route add default gw 192.168.1.1 netmask 255.255.255.0 命令成功运行的话,此机器的IP地址有可能是192.168.1.0。 ( ) 4.Shell程序编写完后还需要用gcc编译器编译。 ( )5
6、.计算机内存中正数的补码和原码一样,负数的补码等于其原码加1( )6.在RedHat中cd 这个命令会把你送回到你的家目录。( )三.填空题1.TCP/IP协议采用四层层级结构,从下到上分别是: 网络接口层._网络互联层_ 、_传输层_ .和 应用层 。2.使用GCC 生成可执行文件似乎是一步完成的,实际上经历了如下四个步骤:_预处理_.编译.汇编和_ 链接_。3.一个C语言程序的执行起点是_main函数_。4. Linux有两种工作界面:字符界面和图形界面,其中 字符 界面功能更强大。5. 管道(或者“|”) 就是将前一个命令的标准输出作为后一个命令的标准输入。6. C程序中,定义一个变量:
7、char ch = -15,写出该变量在内存中的二进制形式_ _。7.2的10次方可以表示_1_K字节 ,2的20次方表示_1_ M字节,2的32次方表示_4_G字节。8. Shell脚本中定义了两个变量 i=4 j=8,还一个变量s表示i+j的结果,如何用shell 语句写出i+j,并把结果赋给变量s,_s=$( $i + $j )_。 9. 默认情况下管理员创建了一个用户,就会在_/home_目录下创建一个用户主目录。10. 某文件的权限为:d-rw-_r-_r-,用数值形式表示该权限_644_;该文件属性是 _文件宿主可读可写不可执行,文件所在用户组可读不可写不可执行,其他用户可读不可写
8、不可执行_。11. 类Class student;则该类的析构函数是_student();_。四、 简答题简述C+的三大特性,并详细阐述之。多态性、封装性和继承性构成了面向对象程序设计的三大特性。继承可以使得子类具有父类的各种属性和方法,而不需要再次编写相同的代码。在令子类继承父类的同时,可以重新定义某些属性,并重写某些方法,即覆盖父类的原有属性和方法,使其获得与父类不同的功能。封装在定义一个类的成员(包括变量和方法),使用private关键字说明这个成员的访问权限,只能被这个类的其他成员方法调用,而不能被其他的类中的方法所调用多态性是指发出同样的消息被不同类型的对象接收时导致完全不同的行为。
9、五.编程题1.在Linux下用C语言编写一程序,实现如下功能:已知一个IP地址的16进制数位0x3b40c812,请将此IP地址用十进制点的形式输出,如“59.64.200.18”。要求有Makefile#includemain()unsigned int address = 0X3b40c812;fprintf(stderr,%u.%u.%u.%un,(0xFF&address)24,(0xFF0000&address)16, (0xFF00&address)8,0xFF&address);2.在Linux下用C语言编写一程序,实现如下功能:将4个无符号字节1、2、3、4按高字节到低字节顺序
10、组成一个整形数: 0x。要求有Makefile#includemain() int x=0;unsigned char x1=01,x2=02,x3=03,x4=04; x|=x1; x=x8; x|=x2; x=x8; x|=x3; x=x8; x|=x4;fprintf(stderr,0x0%0xn,x);3.完成以下C+类的成员函数的实现:class Cpersonpublic:Cperson(); / 无参数构造函数Cperson(char *pName,int iAge,int iSex); /通用构造函数 Cperson(const Cperson &another); / 拷贝构
11、造函数 Cperson(); / 析构函数void print(); / 打印名字、年龄、性别。在Consoleprivate:char *name; / int age;int sex;/#include stdafx.h#include using namespace std;class Cpersonpublic:Cperson(); / 无参数构造函数Cperson(char *pName,int iAge,int iSex); /通用构造函数 Cperson(const Cperson &another); / 拷贝构造函数 Cperson();/ 析构函数void print();
12、 / 打印名字、年龄、性别。private:char *name;int age;int sex;Cperson:Cperson()name= NULL;age= 0;sex= 0; Cperson:Cperson(char *pName,int iAge,int iSex)name = NULL;name= new charstrlen(pName)+1;memset(name,0,strlen(pName)+1);strcpy(name,pName);age= iAge;sex= iSex;Cperson:Cperson(const Cperson &another) name=anoth
13、er.name; age=another.age; sex=another.sex;Cperson:Cperson()if(name != NULL)delete name;void Cperson:print()printf(name=%4xn,name);printf(age=%4dn,age);printf(sex=%4xn,sex);int main(int argc, char* argv)Cperson person;person.print();return 0;4. QT应用题:(1)用Windows 用QT实现一个简单应用,包括二个按钮和一个标签,标签缺省内容为“你好QT” 1个按钮的text为“SetLabel”,当按下此按钮时把标签的内容改为“我是CIZE”,另一个按钮的text为Exit,当单击此按钮时程序退出。(2)将以上程序移植到Linux下,并编译,运行。六、操作题1. 实现ARM2410平台下Linux系统的构建,能够引导到Linux shell #状态;2在Linux虚拟机下交叉编译Helloworld C程序,程序的主要内容是显示10行“Hello ARM 2410 !”字符串的控制台输出,要求每一行有行号信息,目标代码放在ARM平台下运行。要求具有Makefile。
限制150内