面试题目
文章平均质量分 71
Vast_Sea
这个作者很懒,什么都没留下…
展开
-
数组的循环右移
From: http://blog.csdn.net/ammana_babi/article/details/1660973【题目】有一个整数数组,现要求实现这个整数数组的循环右移。如:1,2,3,4,5 则循环右移两位后结果是:4,5,1,2,3。 方法一:(最最容易想到的办法)void RightCircleShift_00(int buffer[],int shi转载 2012-10-29 10:40:16 · 555 阅读 · 0 评论 -
揭开嵌入式C面试题背后的玄机
From: http://blog.csdn.net/sailor_8318/archive/2008/11/10/3270149.aspx//////////////////////////// 1、 int a=2,b=11,c=a+b++/a++; 则c值为多少?【考点】编码规范。表面上考察你对运算符优先级的掌握程度,但实际上优先级这些玩意很难死记硬背得住?转载 2012-10-30 14:31:51 · 733 阅读 · 0 评论 -
去除数组中的重复数字
From: http://blog.csdn.net/sailor_8318/archive/2008/10/12/3060259.aspx××××××××××××××××××××××××××××××××××题目: 有一个数组t[100],存放了1~99之间的数字,用效率较高的代码把重复数字去掉。例如数组{1,2,2,2,3,5,6,6}变成{1,2,3,5,6}。 ×××××转载 2012-10-30 11:15:42 · 1429 阅读 · 0 评论 -
怎样快速检测出一个巨大的单链表中是否具备死链及其位置
From: http://blog.csdn.net/sailor_8318/archive/2008/10/13/3066292.aspx汤姆逊的面试试题:怎么快速检测出一个巨大的单链表中是否具备死链及其位置? 先给出各种链表的定义: 循环链表(Circular Linked List)是另一种形式的链式存储结构。它的特点是表中最后一个结点的指针域指向转载 2012-10-30 13:40:58 · 1596 阅读 · 2 评论 -
经典C++笔试题解析2
From: http://blog.csdn.net/sailor_8318/article/details/317904416、将一个成员函数声明为常量函数有什么作用?a. 编译器保证该函数不得修改成员变量的值b. 允许一个常量对象调用此函数class X{ public: void f() const {转载 2012-10-30 15:44:45 · 748 阅读 · 0 评论 -
经典C++笔试题解析3
From: http://blog.csdn.net/sailor_8318/article/details/318895831、尽量避免类的值传递,用什么方法可以阻止用户的类值传递?只要声明一个私有的拷贝构造函数即可,其不能被编译器调用,因此无法编译通过class X{ X(X& x) { cout转载 2012-10-30 16:13:21 · 820 阅读 · 0 评论 -
经典C++笔试题解析4
From: http://blog.csdn.net/sailor_8318/archive/2008/10/31/3188958.aspx46、每个有虚函数的类都有一个自己的VTABLE,画图解释继承链中的VTABLE关系 各种类型的对象具备和instrument相同的接口,因此可以响应相同的信息。因此其地址都可以放在instrument类型的指针数组中,但是编译转载 2012-10-30 19:36:57 · 755 阅读 · 0 评论 -
经典C++笔试题解析5
From: http://blog.csdn.net/sailor_8318/archive/2008/10/31/3188958.aspx1、预处理器 #include"..."和#include的区别"..."一般是用户提供的头文件,从当前目录开始查找一般是系统提供的头文件,从环境变量值开始查找还有常见的预定义名字:__cplusplus 编译c++转载 2012-10-30 19:48:42 · 1272 阅读 · 0 评论 -
庆祝访问量突破1W,
原创 2012-10-31 09:07:19 · 967 阅读 · 0 评论 -
从一道IBM的笔试题看编码规范
From: http://blog.csdn.net/sailor_8318/article/details/3357766char* fun1() { coutchar* fun2() { coutchar* fun3() { cout int main(int argc, char* argv[]){ cout<<"m"<<fun1(转载 2012-10-31 09:14:16 · 563 阅读 · 0 评论 -
经典C++笔试题解析7
From: --如何利用成员变量作为成员函数的默认参数如何在类成员函数中默认引用类成员?class CAbc;class CAbc{private:int m_abc;public:void fun0(int &p=NULL)//编译错误{printf("%d",p);} void fun1(const int &p=N转载 2012-10-31 09:10:04 · 689 阅读 · 0 评论 -
经典C++笔试题解析8
From: http://blog.csdn.net/sailor_8318/archive/2008/11/19/3337236.aspx成员函数参数的默认值是在声明里赋,还是在定义里?class CAbc{ public: static int m_abc; CAbc(){} static void转载 2012-10-31 09:10:58 · 699 阅读 · 0 评论 -
经典C++笔试题解析6
From: http://blog.csdn.net/sailor_8318/archive/2008/11/19/3337236.aspxstruct CLS{ int m_i; CLS( int i ) : m_i(i) {} CLS( ) { CLS(0); }}; void main( v转载 2012-10-31 09:08:40 · 689 阅读 · 0 评论 -
经典C++笔试题解析1
From: http://blog.csdn.net/sailor_8318/archive/2008/10/29/3171343.aspx1、private 与 protect 关键字的区别。派生类能访问基类的protect成员而不能访问private成员。Private对派生类及用户都不可见,public对派生类和用户都可见,protect介于二者之间,对派生类可见对用转载 2012-10-30 15:12:10 · 760 阅读 · 0 评论 -
两个数相乘,小数点后位数没有限制
算法提示: 输入 string a, string b; 计算string c=a*b; 返回 c;1, 纪录小数点在a,b中的位置l1,l2, 则需要小数点后移动位置数为l=length(a)+length(b)-l1-l2-2;2, 去掉a,b中的小数点,(a,b小数点后移,使a,b变为整数)3, 计算c=a*b; (同整数转载 2012-11-04 09:46:32 · 879 阅读 · 0 评论 -
运算符优先级问题
From: http://blog.csdn.net/ammana_babi/article/list/1给出下面程序的运行结果:int main(){ if( 0 & 1 == 0) printf("0 & 1 == 0/n"); else printf("0 & 1 != 0/n"); if( 0转载 2012-10-29 10:43:27 · 449 阅读 · 0 评论 -
去除数组中重复数字问题
From: http://blog.csdn.net/ammana_babi/article/details/1668348有一个大小为100的数组,里面的数字均介于1到99之间,但是里面的数字有重复,请写个函数去除数组中的重复数字。#define INIT_NUM -1方法一:(最最容易想到的办法)void RemoveBufferRepNum_00(i转载 2012-10-29 10:51:17 · 2832 阅读 · 0 评论 -
一次遍历找链表倒数第n个节点
From: http://blog.csdn.net/sailor_8318/archive/2008/11/28/3397116.aspx思科和横河电机面试题。通过一次遍历找到单链表中倒数第n个节点,链表可能相当大,可使用辅助空间,但是辅助空间的数目必须固定,不能和n有关。 单向链表的特点是遍历到末尾后不能反向重数N个节点。因此必须在到达尾部的同时找到倒数第N个节转载 2012-10-30 14:29:56 · 1312 阅读 · 0 评论 -
如何利用数学思想解1/2/5组合问题
From: http://blog.csdn.net/sailor_8318/archive/2008/10/22/3120812.aspx华为笔试题:写一个程序, 要求功能:求出用1,2,5这三个数不同个数组合的和为100的组合个数。如:100个1是一个组合,5个1加19个5是一个组合。。。。 答案:最容易想到的算法是:设x是1的个数,y是2的个数,z是5的个数,转载 2012-10-30 14:20:21 · 710 阅读 · 0 评论 -
N!的尾部连续0的个数
From: http://blog.csdn.net/sailor_8318/article/details/3088162Baidu和EMC的笔势题:对任意输入的正整数N,编写C程序求N!的尾部连续0的个数,并指出计算复杂度。如:18!=6402373705728000,尾部连续0的个数是3。(不用考虑数值超出计算机整数界限的问题) 思路分析:本题要用数学的方法来解转载 2012-10-30 14:08:55 · 1228 阅读 · 1 评论 -
按位反转字符问题
From: http://blog.csdn.net/ammana_babi/article/list/1Write a C function to swap the bits of a unsigned char so that its bits become the mirror image of the char. MSBs become its LSBs, e.g. 01转载 2012-10-29 10:41:58 · 550 阅读 · 0 评论 -
从相应位置开始删除指定字符串的相应个字符
From: http://blog.csdn.net/ammana_babi/article/details/1687959假设一个字符串 " abcdefg ",那么请你写一个函数,该函数将会从指定位置开始,删除指定长度的字符。如:要从第二个开始,删除2两个字符。则删除后的字符串是 “adefg”。char *DeleteTheCharacters(char *str,int转载 2012-10-29 10:55:33 · 1329 阅读 · 0 评论 -
以单词为单位的翻转字符串
From: http://blog.csdn.net/ammana_babi/article/details/1700261原题:Write a function string reverse string word By word (String input) that reverses a string word by word.For instance: "The h转载 2012-10-29 13:27:35 · 509 阅读 · 0 评论 -
以单词为单位的翻转字符串
From: http://blog.csdn.net/ammana_babi/article/details/1700261原题:Write a function string reverse string word By word (String input) that reverses a string word by word.For instance: "Th转载 2012-10-29 13:29:53 · 442 阅读 · 0 评论 -
用Typedef构造复合类型
在C语言中频繁用以声明一个已经存在的数据类型的同义字。也可以用预处理器做类似的事。例如,思考一下下面的例子:#define dPS struct s * typedef struct s * tPS; 以上两种情况的意图都是要定义dPS和 tPS 作为一个指向结构s指针。哪种方法更好呢?(如果有的话)为什么?这是一个非常微妙的问题,任何人答对这个问题(正当的原因哦,而不是猜转载 2012-10-29 20:51:51 · 1008 阅读 · 0 评论 -
分金条付工钱
From: http://blog.csdn.net/sailor_8318/article/details/1779684问题:你让工人为你工作7天,回报是一根金条,这个金条平分成相连的7段,你必须在每天结束的时候 给他们一段。如果只允许你两次把金条弄断,你如何给你的工人付费? 切成1段,2段,和四段. 1:给出1. 2:给出2,还回1. 3:给出1. 4转载 2012-10-29 22:14:43 · 1367 阅读 · 0 评论 -
菲波拉契数列的递归与非递归算法
From: http://blog.csdn.net/sailor_8318/archive/2007/09/27/1802355.aspxFibonacci 数列有如下特点:其第 1 , 2 项均为 1 , 1 。从第 3 个数开始,该数是其前两个数之和 . 即 :F1=1 (n=1) F2=1 (n=2) Fn=Fn-1+Fn-2 (n>=3) 请你编写转载 2012-10-29 22:47:49 · 1888 阅读 · 1 评论 -
全面解析《嵌入式程序员应该知道的16个问题》
From: http://blog.csdn.net/sailor_8318/article/details/22150411、预处理器(Preprocessor)2、如何定义宏3、预处理器标识#error的目的是什么?4、死循环(Infinite loops)5、数据声明(Data declarations)6、关键字static的作用是什么?7、关键字con转载 2012-10-29 19:39:50 · 544 阅读 · 0 评论 -
atoi(char *str)将字符串转换成整数
From: http://blog.csdn.net/sailor_8318/article/details/1808996【转摘序】原作者的算法很巧妙,直接从高位开始乘加即可,不用考虑字符串的长度当然也可以利用strlen或找结束字符的方式寻找最低位,乘数变化即可,感兴趣的朋友可以试试,不过没有原来的方法好,呵呵,面试我就直接借鉴原作者的算法了,先行谢过啊 题目: 请编写一转载 2012-10-30 09:15:52 · 857 阅读 · 0 评论 -
大写字符转小写字符
待续。。。转载 2012-10-30 09:17:03 · 693 阅读 · 0 评论 -
必有一站出发可走完环行公路
From: http://blog.csdn.net/sailor_8318/article/details/1809001看到一个有趣的问题:一条环形公路,公路上有n个加油站,每个加油站有若干油,这n个加油站的油的总和,刚好可以走完整条环形公路。求证,一定可以找到一个加油站,开车从这里出发(出发时车上没油,方向不定),然后走完这条公路。 假设任意两个相邻的加油站都不能抵达,则转载 2012-10-30 09:39:33 · 883 阅读 · 1 评论 -
列表的逆序和重排
From: http://blog.csdn.net/sailor_8318/article/details/3054351已知链表的头结点head,写一个函数把这个链表逆序 ( Intel)Node * ReverseList(Node *head) //链表逆序{if ( head == NULL || head->next == NULL ) //否则下面的就转载 2012-10-30 09:55:18 · 1031 阅读 · 0 评论 -
寻找最大公共子字符串
求解。。。。。。转载 2012-10-30 10:13:23 · 467 阅读 · 0 评论 -
二维动态数组定义及二维静态数组与**P的区别
矩力集成2008年校园招聘笔试题:动态申请一个二维数组存储图像阵列 传统的解决方案是分配一个指针数组, 然后把每个指针初始化为动态分配的``列"。 以下为一个二维的例子://typedef int (*arraypoiter)[ncolumns];int **dynamic_alloc_arrays(unsigned int nrows,unsigned int转载 2012-10-30 10:27:25 · 1451 阅读 · 0 评论 -
时间复杂度为o(N)查找1至N-1构成的a[N]重复元素
From: http://blog.csdn.net/sailor_8318/archive/2008/10/12/3059935.aspx××××××××××××××××××××××××××××××××××数组a[N],1至N-1这N-1个数存放在a[N]中,其中某个数重复一次。写一个函数,找出被重复的数字。时间复杂度必须为o(N)函数原型:int do_dup(int a[],转载 2012-10-30 10:46:19 · 1575 阅读 · 0 评论 -
几个最大子字符串的算法题
From: http://blog.csdn.net/sailor_8318/article/details/3066329××××××××××××××××××××××××××××××××××统计一个字符串中所有字符出现的次数 基本思路:建立一个访问标志数组,初始化为访问次数0,每访问一次,将其增1: static int count[128];转载 2012-10-30 13:56:19 · 482 阅读 · 0 评论 -
012 查找整数数组中第二大的数
From: http://blog.csdn.net/ammana_babi/article/details/1687970题目:写一个函数找出一个整数数组中,第二大的数。【Mirosoft】PS:1、” 66,66,66,66,66 ”,则没有第二大数。2、” 99,99,88,86,68,66 ”,则最大数是88。下面我先给出查找最大数字的程序:int Ge转载 2012-10-29 11:08:23 · 928 阅读 · 1 评论