导航菜单
首页 >  » 正文

c语言常见面试题 c语言常见面试题

c语言常见面试题

网上找的

#include <stdio.h>

int cal(int h1,int length,int b[]);

int main(){
unsigned int n[]=;
int length=7;
printf("%d",cal(-2,length,n));
return 0;
}

int cal(int h1,int length,int b[]){
if (length-h1==1)
return b[h1];

if (length-h1==2)
return (b[h1]>b[h1 1]?b[h1]:b[h1 1]);

if (length-h1==3)
return (b[h1] b[h1 2]>b[h1 1]?b[h1] b[h1 2]:b[h1 1]);

if (h1>=0)
return b[h1] (cal(h1 2,length,b)>cal(h1 3,length,b)?cal(h1 2,length,b):cal(h1 3,length,b));
else
return (cal(h1 2,length,b)>cal(h1 3,length,b)?cal(h1 2,length,b):cal(h1 3,length,b));
}

c语言常见面试题

网上找的

#include int cal(int h1,int length,int b[]); int main(){ unsigned int n[]=; int length=7; printf("%d",cal(-2,length,n)); return 0; } int cal(int h1,int length,int b[]){ if (length-h1==1) return b[h1]; if (length-h1==2) return (b[h1]>b[h1 1]?b[h1]:b[h1 1]); if (length-h1==3) return (b[h1] b[h1 2]>b[h1 1]?b[h1] b[h1 2]:b[h1 1]); if (h1>=0) return b[h1] (cal(h1 2,length,b)>cal(h1 3,length,b)?cal(h1 2,length,b):cal(h1 3,length,b)); else return (cal(h1 2,length,b)>cal(h1 3,length,b)?cal(h1 2,length,b):cal(h1 3,length,b)); }

c程序员面试题

又没限制括号里的内容,那就随便写呗
(int m;) int n =5;
int& (refm = m;) int ref = n;
ref=ref n;
cout<<ref<<n;

C语言简单面试题

浮点型变量并不精确,所以不可将float变量用“==”或“!=”与数字比较,应该设法转化为“>=”或"<="形式。具体如下:
int型变量:
if(a==0)
float型变量:
const float EPSINON=0.00001;
if((x>=-EPSINON)&&(x<=EPSINON)
指针变量:
if(a==NULL)
bool型变量:
if(!a)

学习嵌入式的人员找工作的时候,面试官一般会出什么题目

最好是能以某个产品举一个详细的例子、驱动开发和应用层一般在公司里面主要职责和任务是做什么的?
3本人现在想转到arm linux上面
1、不知道移植。比如说用智能手环
2、还有这些都需要掌握那些技能知识要点
另外两个肯定是不能简单的分出谁难谁易了。
纯手打,主要用的是C语言。应用工程师则是直接面对客户的、C 即可。而应用开发工程师则相对比较简单,在手机行业,如果是android的话,应用工程师就是开发应用的。硬件工程师就是设计电路板1,学的东西也比较多,另外还要移植一些boot之类的东西、硬件难度是最大,驱动和应用难度都差不多,解决电路问题,驱动工程师主要就设计手机的电路板。如果是linux的话肯定是驱动>,有问题再问我,是最难的、硬件工程师需要掌握模电数电信号处理等知识,驱动工程师和应用工程师,根据客户的需求设计应用程序。
2,驱动工程师就是你说的移植和驱动开发,然后提供接口给上层,最重要的是比较懂得内核的知识和驱动设备开发的知识。但是ANDROID的应用开发工程的应用开发相对较难,如果是用LINUX的话则需要懂得C。国内厂商智能手环一般不会跑arm linux的,而是跑ucos之类的mini系统、这一块在研发主要有三个大岗位,需要的知识都很多就是了。驱动工程师主要就负责移植一些驱动或者开发一些驱动。而驱动工程师则是需要懂得基础的电路知识和应用知识,从底层到上层分别是硬件工程师;应用。比较代表性是的手机吧。
3
另外两个肯定是不能简单的分出谁难谁易了。
纯手打,主要用的是C语言。应用工程师则是直接面对客户的、C 即可。而应用开发工程师则相对比较简单,在手机行业,如果是android的话,应用工程师就是开发应用的。硬件工程师就是设计电路板1,学的东西也比较多,另外还要移植一些boot之类的东西、硬件难度是最大,驱动和应用难度都差不多,解决电路问题,驱动工程师主要就设计手机的电路板。如果是linux的话肯定是驱动>,有问题再问我,是最难的、硬件工程师需要掌握模电数电信号处理等知识,驱动工程师和应用工程师,根据客户的需求设计应用程序。
2,驱动工程师就是你说的移植和驱动开发,然后提供接口给上层,最重要的是比较懂得内核的知识和驱动设备开发的知识。但是ANDROID的应用开发工程的应用开发相对较难,如果是用LINUX的话则需要懂得C。国内厂商智能手环一般不会跑arm linux的,而是跑ucos之类的mini系统、这一块在研发主要有三个大岗位,需要的知识都很多就是了。驱动工程师主要就负责移植一些驱动或者开发一些驱动。而驱动工程师则是需要懂得基础的电路知识和应用知识,从底层到上层分别是硬件工程师;应用。比较代表性是的手机吧。

C语言面试题

#include
typedef int(*FUNC1) (int in);
typedef int(*FUNC2) (int*,int*,int*);
int inc(int a)
{return( a);}
int multi(int*a,int*b,int*c)
{
return(*c=*a**b);
}

void show(FUNC2 fun,int arg1,int*arg2)
{
FUNC1 p=&inc;
int temp=p(arg1);
fun(&temp,&arg1,arg2);
printf("%d",*arg2);
}
main()
{
int a;//局部变量a为0;
show(multi,10,&a);
printf(" ");
return 0;
}
这样就能编译过去了

相关推荐: