两份腾讯笔试题_第1页
两份腾讯笔试题_第2页
两份腾讯笔试题_第3页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、(1912制作)两份腾讯笔试题Tencent笔试题基础题:1智力题1. 1有A B、C、D四个人,要在夜里过一座桥。他们通过这座桥分别需要耗时1、2、 5、10分钟,只有一支手电,并且同时最多只能两个人一起过桥。请问,如何安排,能够在17分钟内这四个人都过桥?1.2 1-20的两个数把和告诉A,积告诉B, A说不知道是多少,B也说不知道,这时 A说 我知道了, B接着说我也知道了,问这两个数是多少?1. 3爸爸,妈妈,妹妹,小强,至少两个人同一生肖的概率是多少?I. 4某人去玩具店买小熊,单价 30元.付给玩具店老板 100元玩具店老板没零钱,去 水果店 换了 100元零钱回来找给那人 70元

2、.那人走后,水果店老板找到玩具店老板说刚才的100元是假币,玩具店老板赔偿了水果店老板100元问:玩具店老板损失了多少钱?2请定义一个宏,比较两个数a、b的大小,不能使用大于、小于、 if语句3计算a'b ? 24如何输岀源文件的标题和目前执行行的行数?5 a3 4哪个不能表示al 1 : *(&a0 0+5) *(*(a+l)+l) *(&al + I) *(&a00+4) 6 fun (expl, exp2), (exp3, exp4, exp5)有几个实参?7. 希尔冒泡快速插入哪个平均速度最快?8. en um的声明方式9. 频繁的插入删除操作使用什么结

3、构比较合适,链表还是数组?10. *p=NULL *p=new char100 sizeof (p)各为多少?II.顺序查找的平均时间12.for (i=0, sum=0; i<10; +i, sum+=i);的运行结果13.不能做switch 0的参数类型是14.不使用其他变量,交换两个整型a, b的值15. 写出 float x 与“零值”比较的 if 语句。16. 两个数相乘,小数点后位数没有限制,请写一个高精度算法数据库1. 有个表 tableQQ, 有整型的 ID 项和字符类型的 Nickname 项,这两个项都不允许为空(1) 写岀建立该表的 SQL语句(2) 找岀Nick

4、name为QQ的用户,按ID降序排列的SQL语句(3) 写岀删除ID为1234用户记录的SQL语句(4) 写岀添加ID为5555, Nick name为'1234'的SQL语句答案:2, 有关系 s (sno, sname) c (eno, cname) sc (sno, eno, grade)(1) 问上课程 "db" 的学生(2) 成绩最高的学生号(3) 每科大于 90 分的人数统网络 11. 描述实时系统的基本特性2. Internet 采用哪种网络协议?该协议的主要层次结构?3. Internet 物理地址和 IP 地址转换采用什么协议?4. IP

5、地址的编码分为哪俩部分?答案基础题1; 1. 1 答案: A & B >2 mins1 mins < AC & D 一 >10 mins2 mins < 一 BA & B 一 > 2 mins一共 2 + 1 + 10 + 2 + 2 = 17 mins1.2 答案: 2 和 31. 3 1-12*11*10*9/12*12*12*12 = 1-55/96 = 41/961.4 答案:70+小熊的进价2 答案: ttdefine max (a, b) (long) (a) - (b) &0x80000000) ?b: a)若 a &

6、gt; b , 则 a-b 的二进制最高位为 0, 与上任何数还是 0, 所以大数为 a;否则, a-b 为负数,二进制最高位为 1, 与上 0x80000000 (最高位为 1 其他为 0)之后 为 1, 所以 此时的大数为 b.3 答案:运算符优先级:括号,下标, - 和 .( 成员 ) 最高;单目的比双目的高;算术 双目的比 其他双目的高;位运算高于关系运算;关系运算高于按位运算(与,或,异或 ) ;按位运算 高于逻辑运算;工目的只有一个条件运算,低于逻辑运算;赋值运算仅比, (顺序运 算) 高。在此题中,位 左移"“优先级高于按位异或” “,所以 b先左移两位(相当于乘 以4

7、),再与a异或。例如:当 a = 6 ; b = 4 时;则 a'b<<2 = 224 答案:n” , _FILE_):printf("The current line No:%dn, /, _LINE_);ANSI C 标准预定义宏:_LINE FILE_DATE_TIME_STDC当要求程序严格遵循ANSI C标准时该标识符被赋值为l_cplusplus_ 当编 写C+程序时该标识符被定义5 答案 : *(*(a+l)+l) ;a 是数组的首地址 , a+1 相当于 *(a+1) =a0 1, 则 *(*(a+l)+l)= *(aOl + 1) =/= al

8、16 答案:两个。形式参数:在声明和定义函数时,写在函数名后的括号中的参数。实参是调用参数中的变量,形参是被调用函数中的变量。7. 答案:快速排序;快速排序、归并排序和基数排序在不同情况下都是最快最有用的&答案:enum枚举类型名枚举常量1,枚举常量2,.枚举常量n;For example:enum weekday Sunday, monday, tuesday, Wednesday, thursday, friday, Saturday) : enum weekday week_day: /week_day 就是一个枚举类型变量 29. 答案:链表10. 答案:都为 4。因为都是指针

9、类型,所占存储空间必然为4。11. 答案: (1+2+3+. . .+n)/n = (n+l)/212. 答案: sum = 5513. 答案: switch 的参数不能为浮点型。14. 答案: x = x+y; y = x-y; x = x-y15. if (x>=0. 000001 && x<=-0. 000001) (x 不为 0 的比较 )float: 6 位精度 double: 16 位精度16.二数据库1(1) CREATE TABLE tableQQ (ID NUMBER(12) NOT NULL,Nickname Varchar2 (30) NOT

10、NULL):(2) select * from tableQQ where Nickname = ' QQ' order by ID desc:(3) delete from tableQQ where >(4) insert into tableQQ values (5555, ' 1234') ; /删除表(5) drop table tableQQ;三网络1. 答案:在特定时间内完成特定的任务,实时性与可靠性。2. 答案: TCP/IP 协议。应用层、传输层、网络层、数据链路层和物理层。3. 答案:地址解析协议 ARP address resolut

11、ion protocol络位哪4. 答案:网络号和主机号。不过是要和“子网掩码”按位与上之后才能区分哪些是网 些是主机位。3选择题 (60)c/c+ os linux 方面的基础知识 c 的 Sizeof 函数有好几个!程序填空 (40)1. (20) 4 空 x5不使用额外空间,将 A,B 两链表的元素交叉归并2. (20) 4 空 x5MFC各树序列化转存在数组或链表中!1.请定义一个宏,比较两个数 a、b 的大小,不能使用大于、小于、 if 语句/ 这样转向定义应该不算违规吧!ttinclude "stdafx. h"#include <string. h>

12、;#include <iostream> using namespace std;'=(l?31);#defi ne Cmp(x, y) compare(x, y) int compare( int a, int b) aA=(l?31) ; bint i=31;-;return (i"T)?(a?i)&l)?l:T) :0;while (i"T) && ! (a&(l?i) (b&(K<i) iint _tmai n() 4 int c;c 二 Cmp(5, 4); cout?c<<endl;

13、return 0;jruv ? 一叶落而知天下秋?的答案:#def i ne COMPARE (a, b) (a) - (b) <0: a<b =0:a=b>0:a>b2. 如何输岀源文件的标题和目前执行行的行数cout ?“ File name ” ? FILE ? ” Line ” ? LINE?en dl;3. 两个数相乘,小数点后位数没有限制,请写一个高精度算法算法提示:输入 string a, string b ; 计算 string c=a*b; 返回 c:h纪录小数点在a, b中的位置11,12,则需要小数点后移动位置数为l=length+length(b

14、)TlT2-2;2, 去掉a, b中的小数点,(a,b小数点后移,使 a, b变为整数)3, 计算c=a*b;(同整数的大数相乘算法)4, 输岀c,(注意在输岀倒数第1个数时,输岀一个小数点。若是输岀的数少于1个,就补0)du51(郁郁思扬)的答案:面的是大整数的运算#include<iostream>5using namespace std;甘 define MAX 10000struct Nodeint data;Node *next;void output(Node *head)(if(!head->next&&!head->data)return

15、;output(head - next);cout?head ->data;void Mui(char *a, char *b, int pos)char *ap=a, *bp 二 b;Node *head=0;head=new Node;head->data=O, head->next=O; 头Node *p, *q=head, *pl;int temp=0, tempi, bbit;while(*bp) / 若乘数不为空,继续 .p=q->next;pl=q;6while (*ap | | temp)/ 若被乘数不空,继续if(!p) / 若要操作的结点为空,申请之

16、p=new Node;p->data=0;p->next=0;pl->next-p;if (*ap=0) tempi-temp;else templ=(pl->data)+(*ap-48)*bbit+temp;ap+; pl->data-templ%10; / 留当前位 temp=templ/10; / 进位以 int 的形式留下 . pl=p;p=p->next; / 被乘数到下一位ap=a; bp+; q=q->next; /q进下 ?位p 二 head;output (p) ;/ 显示cout?endl;while (head) / 释放空间 7

17、p=head->next;delete head;head=p;int main ()(cout?请输入两个数”?endl;char testlMAX, test2MAX;cin. getline(testl, MAX, n ,);cin. getline(test2, MAX, n ,);Mui(strrev(testl), strrev(test2);system PAUSE );return 0;上面大整数已经写了 .你加几个东西就行了#include<iostream>using namespace std;#define MAX 10000struct Nodein

18、t data;8Node *next;;void output(Node *head, int pos)(if(!head->next&&!head- data)return;output (head->next, posT);cout?head ->data;,?if (!pos)cout? ,? ."void Mui(char *a, char *b, int pos)char *ap=a, *bp 二 b;Node *head=0;head=new Node;head->data=0, head->next=0;/ 头Node *p

19、, *q=head, *pl;int temp=O, tempi, bbit;while(*bp) / 若乘数不为空,继续 .p=q->next;pl=q;bbit=*bp-48; / 把当前位转为整型while (*ap | | temp) / 若被乘数不空,继续if(!p) / 若要操作的结点为空,申请之p=new Node;p->data=0;p->next=0;pl->next-p;if (*ap=0) tempi-temp;else templ=(pl->data)+(*ap-48)*bbit+temp;ap+; pl->data=templ%10

20、; / 留当前位 temp=templ/10; / 进位以 int 的形式留下 .pl 二 p;p=p->next; / 被乘数到下一位ap=a; bp+; q=q->next; /q进下 ?位p 二 head;output (p, pos); / 显示cout?endl;while (head) / 释放空间p 二 head- next;delete head;10head=p;int main ()(cout ”请输入两个数 ?endl;char testlMAX, test2MAX, *p;int pos=0;cin. getline(testl, MAX, n , );ci

21、n. getline(test2, MAX, , n'); if(p=strchr(testl, ,.')pos+=strlen(testl)-(p-testl)-l;dop+;*(p l)=*p;while (*p);if(p=strchr (test2,'.')pos+=strlen(test2)-(p-test2)-1;11do(p+;*(pT)=*p;)while (*p);Mui (strrev(testl), strrev(test2), pos);system PAUSE, );return 0;4. 写一个病毒cout ” 一个病毒” ?endl

22、;(开玩笑的,没搞过, V)5. 让你在 100000000个浮点数中找出最大的 10000 个,要求时间复杂度优。/ 本算法使用快排, 0(n*lg(n)最低可以找到线性算法,使用预先区域统计划分!类试于构造 Quad Trees! 写起来代 码会长 些!#include <stdio. h>#include <stdlib. h>ttdefine Max 100000000int aMax+10;int cmp ( const void *a, const void *b)12int *x =(i nt *) a;int *y 二(int *) b;return *

23、x *y;int mai n ()int n=0;while (seanf( ”% d" , &an)二二 1) n+;qsort (a, n, 4, cmp);for ( int i=0;i<3;i+) pr intf(” % d”, a i );return 1;5、有A B、C、D四个人,要在夜里过一座桥。他们通过这座桥分别需要耗时1、2、5、10分钟,只有一支手电,并且同时最多只能两个人一起过桥。请问,如何安排,能够在17分钟内这四个人都过桥?Solutio n:关键是时间最长的两个人必须同时过桥The First Time : A(l) 和 B(2)过桥,A(

24、l)返回 Cost : 1+2The Seco nd Time : C (5) 和 D(10)过桥,B(2)返回 Cost : 10+2The Third Time A(l) 和 B(2)过桥 Cost : 2Total Time Cost :(1+2)+(10+2)+2=17 minutes1. 请定义一个宏,比较两个数a、b的大小,不能使用大于、小于、 if语句2. 如何输岀源文件的标题和目前执行行的行数133. 两个数相乘,小数点后位数没有限制,请写一个高精度算法4. 写一个病毒2、如何输岀源文件的标题和目前执行行的行数3、两个数相乘,小数点后位数没有限制,请写一个高精度算法4、写一个病

25、毒5、有A、B、C、D四个人,要在夜里过一座桥。他们通过这座桥分别需要耗时1、2、5、10分钟,只有一支手电,并且同时最多只能两个人一起过桥。请问,如何安排,能够在17分钟内这四个人都过桥?基础题:1智力题1. 1有A B、C、D四个人,要在夜里过一座桥。他们通过这座桥分别需要耗时1、2、 5、10分钟,只有一支手电,并且同时最多只能两个人一起过桥。请问,如何安排,能够在17分钟内这四个人都过桥?1.2 1-20的两个数把和告诉 A,积告诉B, A说不知道是多少,B也说不知道,这时 A说 我知道 了, B接着说我也知道了,问这两个数是多少?1. 3爸爸,妈妈,妹妹,小强,至少两个人同一生肖的概

26、率是多少?1.4某人去玩具店买小熊,单价 30元.付给玩具店老板 100元玩具店老板没零钱,去水果店换了 100元零钱回来找给那人 70元.那人走后,水果店老板找到玩具店老板说刚才的100元是假币,玩具店老板赔偿了水果店老板100元问:玩具店老板损失了多少钱?2请定义一个宏,比较两个数a、b的大小,不能使用大于、小于、 if语句3计算a'b ? 24如何输岀源文件的标题和目前执行行的行数?5 a3 4哪个不能表示al 1 : *(&a0 0+5) *(*(a+l)+l) *(&al + I)*(&a0 0+4) 6 fun (expl, exp2), (exp3

27、, exp4, exp5)有几个实参?7. 希尔冒泡快速插入哪个平均速度最快?8. en um的声明方式9. 频繁的插入删除操作使用什么结构比较合适,链表还是数组?11. 顺序查找的平均时间12.for (i=0, sum=0; i<10; +i, sum+=i):的运行结果13.不能做 switch () 的参数类型是14.不使用其他变量,交换两个整型a, b 的值15.写出 float x 与" 零值”比较的 if语句。16.两个数相乘,小数点后位数没有限制,请写一个高精度算法1. 有个表 tableQQ, 有整型的 ID 项和字符类型的 Nickname 项,这两个项都不

28、允许为空(1)写岀建立该表的 SQL语句(2)找岀Nick name为QQ的用户,按ID降序排列的SQL语句(3)写岀删除 ID 为 1234用户记录的SQL语句(4)写岀添加ID为5555, Nick name为'1234'的SQL语句答案:2,有关系 s (sno, sname) c (eno, cname) sc (sno, eno, grade)(1)问上课程 "db" 的学生(2)成绩最高的学生号(3)每科大于 90 分的人数统网络1. 描述实时系统的基本特性2. Internet 采用哪种网络协议?该协议的主要层次结构?3. Internet 物

29、理地址和 IP 地址转换采用什么协议?4. IP 地址的编码分为哪俩部分?答案一基础题1; 1. 1 答案: A & B >2 mins1 mins < 一一 AC & D >10 mins2 mins < 一 BA & B -> 2 mins一共 2 + 1 + 10 + 2 + 2 = 17 mins1.2 答案: 2 和 31.3 1-12*11*10*9/12*12*12*12 = 1-55/96 二 41/961.4 答案: 70+小熊的进价2 答案: ttdefine max(a,b) (long) (a) - (b) &

30、;0 X 80000000) ?b: a)若 a > b , 则 a-b 的二进制最高位为0, 与上任何数还是 0, 所以大数为 a;否则, a-b 为负数,二进制最高位为 此时的大数为 b.1,与上 0X80000000 (最高位为 1其他为 0)之后 为 1,所以3 答案:运算符优先级:括号,下标,- 和 .( 成员 ) 最高;单目的比双目的高;算术双目的( 与,或,异 或 ) ;按位运算高 算仅比, ( 顺序运算 ) 高。在此比其他双目的高;位运算高于关系运算;关系运算高于按位运算于逻辑运算;三目的只有一个条件运算,低于逻辑运算;赋值运 题中,位左移”优先级高于按位异或”,所以 b

31、 先左移两位(相当于乘以4),再与a异或。例如:当 a=6; b=4时;贝U aAb<<2= 224 答案: printf ( The file name: %dn , _FILE_);printf( The current line No:%dn , _LINE_);ANSI C 标准预定义宏:_LINE FILE_DATE_TIME_15_STDC当要求程序严格遵循ANSI C标准时该标识符被赋值为l_cplusplus_当编写C+程序时该标识符被定义5 答案 : *(*(a+l)+l) ;a 是数组的首地址 ,a+1 相当于 &a0 1, *(a+l)=aO 1,贝*(*(a+l)+l) 二 *(aOl + 1) -/- al 16 答案:两个。形式参数:在声明和定义函数时,写在函数名后的括号中的参数。实参是调用参数中的变量,形参是被调用函数中的变量。7. 答案:快速排序;快速排序、归并排序和基数排序在不同情况下都是最快最有用的。8. 答案:enum枚举类型名枚举常量1,枚举常量2,.枚举常量n;For example

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论