应聘C语言类工作职位面试题大汇总.doc

应聘C语言类工作职位面试题大汇总.doc

ID:51800154

大小:39.45 KB

页数:5页

时间:2020-03-15

应聘C语言类工作职位面试题大汇总.doc_第1页
应聘C语言类工作职位面试题大汇总.doc_第2页
应聘C语言类工作职位面试题大汇总.doc_第3页
应聘C语言类工作职位面试题大汇总.doc_第4页
应聘C语言类工作职位面试题大汇总.doc_第5页
资源描述:

《应聘C语言类工作职位面试题大汇总.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Cisco和慧通的c语言笔试面试题思科  1.用宏定义写出swap(x,y)  #defineswap(x,y)  x=x+y;  y=x-y;  x=x-y;  2.数组a[N],存放了1至N-1个数,其中某个数重复一次。写一个函数,找出被重复的数字.时间复杂度必须为o(N)函数原型:  intdo_dup(inta[],intN)  3一语句实现x是否为2的若干次幂的判断  inti=512;  cout<

2、gnedintintvert(unsignedintx,intp,intn)实现对x的进行转换,p为起始转化位,n为需要转换的长度,假设起始点在右边.如x=0b00010001,p=4,n=3转换后x=0b01100001  unsignedintintvert(unsignedintx,intp,intn){  unsignedint_t=0;  unsignedint_a=1;  for(inti=0;i

3、=_a;  _a=_a<<1;  }  _t=_t<

4、eturnx;  }  慧通:  什么是预编译  何时需要预编译:  1、总是使用不经常改动的大型代码体。  2、程序由多个模块组成,所有模块都使用一组标准的包含文件和相同的编译选项。在这种情况下,可以将所有包含文件预编译为一个预编译头。  char*constp;  charconst*p  constchar*p  上述三个有什么区别?  char*constp;//常量指针,p的值不可以修改  charconst*p;//指向常量的指针,指向的常量值不可以改  constchar*p;//和charcons

5、t*p  charstr1[]="abc";  charstr2[]="abc";  constcharstr3[]="abc";  constcharstr4[]="abc";  constchar*str5="abc";  constchar*str6="abc";  char*str7="abc";  char*str8="abc";  cout<<(str1==str2)<

6、<(str7==str8)<  if('a'<=str[i]&&str[i]<='z')  str[i]-=('a'-'A');  

7、}  charstr[]="aBcDe";  cout<<"str字符长度为:"<

8、个指针为4个字节,因此返回4。  一个32位的机器,该机器的指针是多少位  指针是多少位只要看地址总线的位数就行了。80386以后的机子都是32的数据总线。所以指针的位数就是4个字节了。  main()  {  inta[5]={1,2,3,4,5};  int*ptr=(int*)(&a+1);  printf("%d,%d",*(a+1),*(ptr-1));  }  输出:2,5  *(a+1)就是a[1],*(ptr-1)就是a[4],执行结果是2,5  &a+1不是首地址+1,系统会认为加一个a数组的偏

9、移,是偏移了一个数组的大小(本例是5个int)  int*ptr=(int*)(&a+1);  则ptr实际是&(a[5]),也就是a+5  原因如下:  &a是数组指针,其类型为int(*)[5];  而指针加1要根据指针类型加上一定的值,  不同类型的指针+1之后增加的大小不同  a是长度为5的int数组指针,所以要加5*sizeof(int)  所以ptr实际是a[

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。