C语言笔试题总结
1.三个私有IP地址范围:10.0.0.0-10.255.255.255,172.16.0.0-172.31.255.255,和192.168.0.0-192.168.255.255。末尾全0的表示一个网段,不用于单独的主机IP使用,x.x.0.1一般是路由器的IP地址(大多路由器产品IP地址为192.168.0.1或192.168.1.1)。末尾全1的(255)是广播地址,也不用于单独主机IP。
2.物理地址(即实际存储地址)=基址+偏移。逻辑地址=偏移
3.UML设计关系:
依赖:用到了别人的方法或变量;关联:对称的,好比你是我的朋友,我也是你的朋友;聚合:非对称的,员工与公司就是聚合关系,还有一个重要特点就是生命周期可以不同,员工离开了公司还是可以活的;组合:生命周期一致,好比人与心脏,一个没了另一个也没了。强度:依赖<关联<聚合<组合。
4.注意字符串常量后面有隐含的’\0’,指针的sizeof永远是4字节(32位系统)或8字节(64位系统),而不管指针是什么类型的,指针的类型只是决定了它指向的数据的类型。
5.数据库是的记录可以重复,主键要求既是唯一的,也是非空的,数据库为每个主键默认建立索引,但用户可以通过CREATE INDEX另建其他索引,所以索引个数不唯一,非主键亦可有索引.
6.循环队列的front和rear必有一个不指向实质元素,不然无法判断队列满或空。
7.序列9.2.5.7的哈夫曼编码,最上面根结点权值为23,它的某个孩子权值为14,另一个权值为9(实质结点),权值为14的又分出两个孩子,一个权值为7,另一个权值也为7,有一个是实质结点,另一个分出两个孩子,一个权值为5,另一个权值为2,这两个都是实质结点。所谓实质结点就是题目中的叶结点,非实质结点起辅助作用。带权路径长度即为长度的乘权求和。9的长度(距根结点的边的个数)为1,2的长度为3,5的长度为3,7的长度为2,这样结果为9*1+2*3+5*3+7*2=44。
8.请定义一个宏,比较两个数a、b的大小,不能使用大于、小于、if语句.
#define max(a,b) ((a-b)&(1<<31))?b:a (判断相减后的符号位)
9.a[3][4]哪个能表示 a[1][1]: *(&a[0][0]+5)*(*(a+1)+1) *(&a[1]+1) *(&a[0][0]+4)
答案:*(&a[0][0]+5)*(&a[1]+1)
分析: (&a[0][0]+5)相当于数组地址后移5个单位到达a[1][1],*(a+1)相当得到第二个数组,也就是a[1]的地址,*a[1]+1,相当于a[1][1], 因此*(*(a+1)+1)为a[1][1],&a[1]是数组a[1]的指针,那么&a[1]+1会移动到a[2]的地址,*(&a[1]+1)会得到a[2]数组的首地址,所以它是错误的,*(&a[0][0]+4)与*(&a[0][0]+5)对比也是错误的.
10. 有个表tableQQ,有整型的ID项和字符类型的Nickname项,这两个项都不允许为空
(1)写出建立该表的SQL语句
(2)找出Nickname为QQ的用户,按ID降序排列的SQL语句
(3)写出删除ID为1234用户记录的SQL语句
(4)写出添加ID为5555,Nickname为'1234'的SQL语句
答案:
(1) CREATE TABLE tableQQ
(
ID NUMBER(12) NOT NULL,
Nickname Varchar2(30) NOT NULL
);
(2) select * from tableQQ where Nickname = 'QQ' order by ID desc;
(3) delete from tableQQ where ID='1234';
(4) insertinto tableQQ values(5555,'1234');
//删除表
(5)drop table tableQQ;
11.有关系 s(sno,sname) c(cno,cname) sc(sno,cno,grade)
1 问上课程 "db"的学生
2 成绩最高的学生号
3 每科大于90分的人数
答案:
(1)select a.sno, a.cno,b.cno, b.cname from sc a, c b where a.cno = b.cno and b.cname = 'db';
(2)select sno, max(grade)fromsc group by sno;
(3)select cno, count(sno)from sc where grade > 90 group by cno;
12.Internet采用哪种网络协议?该协议的主要层次结构?
答案:TCP/IP协议。应用层、传输层、网络层、数据链路层和物理层。
13. Internet物理地址和IP地址转换采用什么协议?
答案:地址解析协议ARP address resolution protocol
14. IP地址的编码分为哪俩部分?
答案:网络号和主机号。不过是要和“子网掩码”按位与上之后才能区分哪些是网络位哪些是主机位。
15、如下关于编译链接的说法错误的是(B)
A、编译优化会使得编译速度变慢 B、预编译头文件可以优化程序的性能
C、静态链接会使得可执行文件偏大 D、动态链接库会使进程启动速度偏慢
分析:预编译头文件仅仅能提高编译的效率,但其本身不涉及代码的优化级别,更不会修改代码,故同样的内容不可能产生程序性能的优化.
16、如下关于链接的说法错误的是(C)
A、一个静态库中不能包含两个同名全局函数的定义
B、一个动态库中不能包含两个同名全局函数的定义
C、如果两个静态库都包含一个同名全局函数,他们不能同时被链接
D、如果两个动态库都包含一个同名全局函数,他们不能同时被链接
分析:对于AB,编译器保证没有同名函数,对于C,静态函数在编译完成之后会在不同的类库,同名函数上加上一些参数或者一些特别的信息,从而在调用时区别.对于D,全局函数是定义在类外的,故它们不能同时被调用.
17.常见的排序算法中,属于稳定排序的有:冒泡排序,插入排序和归并排序,不稳定排序有:快速排序,堆排序,选择排序和希尔排序.
18、在程序设计中,要对两个16K×16K的多精度浮点数二维数组进行矩阵求和时,行优先读取和列优先读取的区别是(B)
A、没区别 B、行优先快
C、列优先快 D、2种读取方式速度为随机值,无法判断
分析:若在内存中,则数据可以”随机存取”,但内存数据被读取或写入时,所需要的时间与这段信息所在的位置无关.但是在读取和写入磁盘时,其所需要的时间与位置就会有关系.因为在BASIC,PASCAL和C/C++语言中,数组的存放是按照行优先来存放的,按行号第一行第二行…以此类推.本体关键是考察内存抖动的问题,如果按列访问则需要跳过一大串内存地址,这样可能需求的内存地址不在当前页中则需要进行页置换,这样便需要硬盘IO,减低速度.
19、TCP的关闭过程,说法正确的是(D)
A、TIME_WAIT状态称为MSL(Maximum Segment Lifetime)等待状态
B、对一个established状态的TCP连接,在调用shutdown函数之前调用close接口,可以让主动调用的一方进入半关闭状态
C、主动发送FIN消息的连接端,收到对方回应ack之前不能发只能收,在收到对方回复ack之后不能发也不能收,进入CLOSING状态
D、在已经成功建立连接的TCP连接上,如果一端收到RST消息可以让TCP的连接端绕过半关闭状态并允许丢失数据。//TIME_WAIT
是TCP链接断开时必定出现的状态.
分析,对于A,TCP下每条连接都有一个属性叫做maxsegment lifetime,就是说该连接关闭后,要经过2*max
segment lifetime的时间,才算是真正的被关闭,才能被重新建立,以防止这条链路上还有东西在传输,停留在TIME_WAIT状态的持续时间是最长分节生命周期(MSL)的两倍,有时候称之为2MSL,但是TIME_WAIT并不是MSL.对于B,在调用closesocket之前先调用shutdown函数关闭发送数据通道,从而进入半关闭状态.对于C,在收到ack之后可以收不能发.
分享到:
相关推荐
java做题笔记
资源名称:计算机组成原理选填(做题笔记) 资源类型:学习笔记 简介: "计算机组成原理选填(做题笔记)"是一份针对计算机组成原理选修课程的学习笔记集合。本笔记集旨在帮助学生整理和总结计算机组成原理相关知识...
leetcode做题笔记
《某国一Python算法做题笔记-算法模板》是一本专为Python编程爱好者与算法学习者精心打造的实用指南。本书通过一系列精心设计的算法模板,帮助读者快速掌握Python算法的核心技巧,提升编程能力。书中详细介绍了各种...
备份自用
leetcode题库 leetcode讲解 leetcode是一个 Online Judge 网站,在线练习编程,...第二步,做个总结,按照算法体系把有价值的题归纳总结、举一反三,得出一些有价值的思考和结论。 本gitbook的github仓库: 本gitbook
个人在学习该课程时候自己做的复习笔记,从物理层一直到应用层都有,一共85页,文字图片搭配合理
C语言做题题目和笔记源码.zipC语言做题题目和笔记源码.zipC语言做题题目和笔记源码.zipC语言做题题目和笔记源码.zipC语言做题题目和笔记源码.zipC语言做题题目和笔记源码.zipC语言做题题目和笔记源码.zip
Go面试面试题笔记整理对⾥⾯的部分题⽬做⼀些笔记备查
Leetcode做题笔记 主要记录了做过的题目,有记录解题的代码,包含了注释。有记录思路和过程。方便以后直接复习。 所有题目来源于 笔记 目录 按照时间顺序排序 序号 标题 标签 文档 备注 1 两数之和 数组 easy 35 ...
参照此笔记默认有马老师的教程,或已对课本知识点内容有基础认识,本笔记也只是作为后期知识巩固和做题时辅助使用,前期肯定比较粗,后期随着对知识点认知的加深在慢慢补充。 软考中级笔记,本人自己学习过程中记录...
这个是我自己在学习该课程时候做的复习笔记,主要具有以下几个特点: ① 这本笔记主要针对的是桂林电子科技大学本科或研究生计算机网络的复习资料,当然,其他学校的同学也可以参考。 ② 这本笔记前面带有目录,...
南理工高等工程数学期末习题笔记,各类题型整理做法和例题解答,可以配合我写的复习笔记食用。我从0开始自学,做了所有能收到的卷子,然后出来的整理的各类会考的题型和解答,一共花了一个礼拜,最后考了94。这份...
主要是阅读笔记,例如《C深度剖析》、《C primer PLUS》《C语言经典面试题》、《让你不再害怕C指针》、《C难点及分析》。涵盖了几乎所有的知识点,做整理成txt,主要是我觉得C语言学习主要是基础知识要记牢,一个是...
LeetCode LeetCode做题笔记 熟做力扣500道,差生也能进大厂
自己上课做的笔记
本人边看系统分析师教程边做的比较,还比较详细,我考试一般都是看教材、做笔记、做真题、看笔记、做真题。
初学数据结构时候做的练习题集合笔记,是在自己处于菜鸟阶段写的所有的数据结构的刷题笔记,过程都是很艰难的,从自己最low的时候走上去的
包括做题笔记,还有5套模拟题(均有答案,PDF版)