c语言面试题集完整版.docx
- 文档编号:4164064
- 上传时间:2022-11-28
- 格式:DOCX
- 页数:151
- 大小:167.81KB
c语言面试题集完整版.docx
《c语言面试题集完整版.docx》由会员分享,可在线阅读,更多相关《c语言面试题集完整版.docx(151页珍藏版)》请在冰豆网上搜索。
c语言面试题集完整版
c语言面试题集(完整版)
试题1:
C语言面试题一——华为篇
1.static有什么用途?
(请至少说明两种)
1)限制变量的作用域
2)设置变量的存储域(堆,主动分配内存也是堆)
2.引用与指针有什么区别?
1)引用必须被初始化,指针不必。
2)引用初始化以后不能被改变,指针可以改变所指的对象。
3)不存在指向空值的引用,但是存在指向空值的指针。
3.描述实时系统的基本特性
在特定时间内完成特定的任务,实时性与可靠性
4.全局变量和局部变量在内存中是否有区别?
如果有,是什么区别?
全局变量储存在静态数据库,局部变量在栈
5.什么是平衡二叉树?
左右子树都是平衡二叉树且左右子树的深度差值的绝对值不大于1
6.堆栈溢出一般是由什么原因导致的?
没有回收垃圾资源
7.什么函数不能声明为虚函数?
constructor(构造函数)
8.冒泡排序算法的时间复杂度是什么?
(其它排序算法的时间复杂度)
O(n^2)
9.写出floatx与“零值”比较的if语句。
if(x>0.000001&&x<-0.000001)
10.Internet采用哪种网络协议?
该协议的主要层次结构?
tcp/ip应用层/传输层/网络层/数据链路层/物理层
11.Internet物理地址和IP地址转换采用什么协议?
ARP(AddressResolutionProtocol)(地址解析協議)
18.IP地址的编码分为哪俩部分?
IP地址由两部分组成,网络号和主机号。
不过是要和“子网掩码”按位与上之后才能区分哪些是网络位哪些是主机位。
19.用户输入M,N值,从1至N开始顺序循环数数,每数到M输出该数值,直至全部输出。
写出C程序。
循环链表,用取余操作做
#include
#defineNULL0
#defineTYPEstructstu
#defineLENsizeof(structstu)
structstu
{
intdata;
structstu*next;
};
TYPE*line(intn)
{
intsum=1;
structstu*head,*pf,*pb;
inti;
for(i=0;i { pb=(TYPE*)malloc(LEN); pb->data=sum; if(i==0) pf=head=pb; else pf->next=pb; if(i==(n-1)) pb->next=head; elsepb->next=NULL; pf=pb; sum++; } return(head); } main() { intM,N,x,i; structstu*p,*q; printf("pleasescanfMandN(M scanf("%d%d",&M,&N); p=line(N); x=N; while(x) { for(i=1;i { p=p->next; } q=p->next; printf("%d\n",q->data); p->next=p->next->next; p=p->next; free(q); x--; } getch(); } 20.不能做switch()的参数类型是: switch的参数不能为实型。 (只能是intchar) 试题2: 1.-1,2,7,28,,126请问28和126中间那个数是什么? 为什么? 第一题的答案应该是4^3-1=63 规律是n^3-1(当n为偶数0,2,4) n^3+1(当n为奇数1,3,5) 答案: 63 2.用两个栈实现一个队列的功能? 要求给出算法和思路! 设2个栈为A,B,一开始均为空. 入队: 将新元素push入栈A; 出队: (1)判断栈B是否为空; (2)如果不为空,则将栈A中所有元素依次pop出并push到栈B; (3)将栈B的栈顶元素pop出; 这样实现的队列入队和出队的平摊复杂度都还是O (1),比上面的几种方法要好。 3.在c语言库函数中将一个字符转换成整型的函数是atol()吗,这个函数的原型是什么? 函数名: atol 功能: 把字符串转换成长整型数 用法: longatol(constchar*nptr); 程序例: #include #include intmain(void) { longl; char*str="98765432"; l=atol(lstr); printf("string=%sinteger=%ld\n",str,l); return(0); } 4.对于一个频繁使用的短小函数,在C语言中应用什么实现,在C++中应用什么实现? c用宏定义,c++用inline 5.直接链接两个信令点的一组链路称作什么? PPP点到点连接 6.接入网用的是什么接口? TCP/IP 7.voip都用了那些协议? RTCP 8.软件测试都有那些种类? 黑盒: 针对系统功能的测试白合: 测试函数功能,各函数接口 9.确定模块的功能和模块的接口是在软件设计的那个队段完成的? 概要设计阶段 11.unsignedchar*p1; unsignedlong*p2; p1=(unsignedchar*)0x801000; p2=(unsignedlong*)0x810000; 请问p1+5=? ; p2+5=? ; 答: p1+5=0x801005; p2+5=0x810020; 二.选择题: 1.Ethternet链接到Internet用到以下那个协议? D A.HDLC;B.ARP;C.UDP;D.TCP;E.ID 2.属于网络层协议的是: BC A.TCP;B.IP;C.ICMP;D.X.25 3.Windows消息调度机制是: c A.指令队列;B.指令堆栈;C.消息队列;D.消息堆栈; 4.unsignedshorthash(unsignedshortkey) { return(key>>4)%256 } 请问hash(16),hash(256)的值分别是: A A.1.16;B.8.32;C.4.16;D.1.32 三.找错题: 1.请问下面程序有什么错误? inta[60][250][1000],i,j,k; for(k=0;k<1000;k++) for(j=0;j<250;j++) for(i=0;i<60;i++) a[i][j][k]=0; 把循环语句内外换一下 2.#defineMax_CB500 voidLmiQueryCSmd(StructMSgCB*pmsg) { unsignedcharucCmdNum; ...... for(ucCmdNum=0;ucCmdNum { ......; } 死循环(unsignedchar0到255) 3.以下是求一个数的平方的程序,请找出错误: #defineSQUARE(a)((a)*(a)) inta=5; intb; b=SQUARE(a++); 4.typedefunsignedcharBYTE intexamply_fun(BYTEgt_len;BYTE*gt_code) { BYTE*gt_buf; gt_buf=(BYTE*)MALLOC(Max_GT_Length); ...... if(gt_len>Max_GT_Length) { returnGT_Length_ERROR; } ....... } 试题3: 华为全套完整试题 高级题 1、已知一个单向链表的头,请写出删除其某一个结点的算法,要求,先找到此结点,然后删除。 slnodetype*Delete(slnodetype*Head,intkey){}中if(Head->number==key) { Head=Pointer->next; free(Pointer); break; } Back=Pointer; Pointer=Pointer->next; if(Pointer->number==key) { Back->next=Pointer->next; free(Pointer); break; } voiddelete(Node*p) { if(Head=Node) while(p) } 2、有一个16位的整数,每4位为一个数,写函数求他们的和。 解释: 整数110101*********1 和1101+0101+1011+0111 感觉应该不难,当时对题理解的不是很清楚,所以写了一个函数,也不知道对不对。 疑问: 既然是16位的整数,110101*********1是2进制的,那么函数参数怎么定义呢,请大虾指教。 答案: 用十进制做参数,计算时按二进制考虑。 /*n就是16位的数,函数返回它的四个部分之和*/ charSumOfQuaters(unsignedshortn) { charc=0; inti=4; do { c+=n&15; n=n>>4; }while(--i); returnc; } 3、有1,2,....一直到n的无序数组,求排序算法,并且要求时间复杂度为O(n),空间复杂度O (1),使用交换,而且一次只能交换两个数.(华为) #include intmain() { inta[]={10,6,9,5,2,8,4,7,1,3}; intlen=sizeof(a)/sizeof(int); inttemp;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 试题 完整版
