一级毛片免费不卡在线视频,国产日批视频免费在线观看,菠萝菠萝蜜在线视频免费视频,欧美日韩亚洲无线码在线观看,久久精品这里精品,国产成人综合手机在线播放,色噜噜狠狠狠综合曰曰曰,琪琪视频

嵌入式軟件工程師筆試題

時(shí)間:2024-05-24 03:39:24 資料大全 我要投稿
  • 相關(guān)推薦

嵌入式軟件工程師筆試題

  1、將一個(gè)字符串逆序

嵌入式軟件工程師筆試題

  2、將一個(gè)鏈表逆序

  3、計(jì)算一個(gè)字節(jié)里(byte)里面有多少bit被置1

  4、搜索給定的字節(jié)(byte)

  5、在一個(gè)字符串中找到可能的最長(zhǎng)的子字符串

  6、字符串轉(zhuǎn)換為整數(shù)

  7、整數(shù)轉(zhuǎn)換為字符串

  /*

  * 題目:將一個(gè)字符串逆序

  * 完成時(shí)間:2006.9.30深圳極訊網(wǎng)吧

  * 版權(quán)歸劉志強(qiáng)所有

  * 描述:寫本程序的目的是希望練一下手,希望下午去面試能成功,不希望國(guó)慶節(jié)之后再去找工作拉!

  */

  #include

  using namespace std;

  //#define NULL ((void *)0)

  char * mystrrev(char * const dest,const char * const src)

  {

  if (dest==NULL && src==NULL)

  return NULL;

  char *addr = dest;

  int val_len = strlen(src);

  dest[val_len] = '\0';

  int i;

  for (i=0; i

  {

  *(dest+i) = *(src+val_len-i-1);

  }

  return addr;

  }

  main()

  {

  char *str="asdfa";

  char *str1=NULL;

  str1 = (char *)malloc(20);

  if (str1 == NULL)

  cout<<"malloc failed";

  cout<

  free(str1);

  str1=NULL;//杜絕野指針

  }

  p=head;

  q=p->next;

  while(q!=NULL)

  {

  temp=q->next;

  q->next=p;

  p=q;

  q=temp;

  }

  這樣增加個(gè)輔助的指針就行樂,

嵌入式軟件工程師筆試題

。

  ok 通過(guò)編譯的代碼:

  #include

  #include

  #include

  typedef struct List{

  int data;

  struct List *next;

  }List;

  List *list_create(void)

  {

  struct List *head,*tail,*p;

  int e;

  head=(List *)malloc(sizeof(List));

  tail=head;

  printf("\nList Create,input numbers(end of 0):");

  scanf("%d",&e);

  while(e){

  p=(List *)malloc(sizeof(List));

  p->data=e;

  tail->next=p;

  tail=p;

  scanf("%d",&e);}

  tail->next=NULL;

  return head;

  }

  List *list_reverse(List *head)

  {

  List *p,*q,*r;

  p=head;

  q=p->next;

  while(q!=NULL)

  {

  r=q->next;

  q->next=p;

  p=q;

  q=r;

  }

  head->next=NULL;

  head=p;

  return head;

  }

  void main(void)

  {

  struct List *head,*p;

  int d;

  head=list_create();

  printf("\n");

  for(p=head->next;p;p=p->next)

  printf("--%d--",p->data);

  head=list_reverse(head);

  printf("\n");

  for(p=head;p->next;p=p->next)

  printf("--%d--",p->data);

  }

  編寫函數(shù)數(shù)N個(gè)BYTE的數(shù)據(jù)中有多少位是1。

  解:此題按步驟解:先定位到某一個(gè)BYTE數(shù)據(jù);再計(jì)算其中有多少個(gè)1。疊加得解。

  #incluede

  #define N 10

  //定義BYTE類型別名

  #ifndef BYTE

  typedef unsigned char BYTE;

  #endif

  int comb(BYTE b[],int n)

  {

  int count=0;

  int bi,bj;

  BYTE cc=1,tt;

  //歷遍到第bi個(gè)BYTE數(shù)據(jù)

  for(bi=0;bi

  {

  //計(jì)算該BYTE的8個(gè)bit中有多少個(gè)1

  tt=b[bi];

  for(bj=0;bj<8;bj++)

  {

  //與1相與或模2結(jié)果是否是1?測(cè)試當(dāng)前bit是否為1

  //if(tt%2==1)

  if((tt&cc)==1)

  {

  count++;

  }

  //右移一位或除以2,效果相同

  //tt=tt>>1;

  tt=tt/2;

  }

  }

  return count;

  }

  //測(cè)試

  int main()

  {

  BYTE b[10]={3,3,3,11,1,1,1,1,1,1};

  cout<

  return 0;

  }

  1,

資料共享平臺(tái)

嵌入式軟件工程師筆試題》(http://m.oriental01.com)。編寫一個(gè) C 函數(shù),該函數(shù)在一個(gè)字符串中找到可能的最長(zhǎng)的子字符串,且該字符串是由同一字符組成的。

  char * search(char *cpSource, char ch)

  {

  char *cpTemp=NULL, *cpDest=NULL;

  int iTemp, iCount=0;

  while(*cpSource)

  {

  if(*cpSource == ch)

  {

  iTemp = 0;

  cpTemp = cpSource;

  while(*cpSource == ch)

  ++iTemp, ++cpSource;

  if(iTemp > iCount)

  iCount = iTemp, cpDest = cpTemp;

  if(!*cpSource)

  break;

  }

  ++cpSource;

  }

  return cpDest;

  }

  #include

  #include

  //

  // 自定義函數(shù)MyAtoI

  // 實(shí)現(xiàn)整數(shù)字符串轉(zhuǎn)換為證書輸出

  // 程序不檢查字符串的正確性,請(qǐng)用戶在調(diào)用前檢查

  //

  int MyAtoI(char str[])

  {

  int i;

  int weight = 1; // 權(quán)重

  int rtn = 0; // 用作返回

  for(i = strlen(str) - 1; i >= 0; i--)

  {

  rtn += (str[i] - '0')* weight; //

  weight *= 10; // 增重

  }

  return rtn;

  }

  void main()

  {

  char str[32];

  printf("Input a string :");

  gets(str);

  printf("%d\n", MyAtoI(str));

  }

  #include

  #include

  void reverse(char s[])

  { //字符串反轉(zhuǎn)

  int c, i=0, j;

  for(j=strlen(s)-1;i

  { c=s[i];

  s[i]=s[j];

  s[j]=c;

  i++;

  }

  }

  void IntegerToString(char s[],int n)

  { int i=0,sign;

  if((sign=n)<0)//如果是負(fù)數(shù),先轉(zhuǎn)成正數(shù)

  n=-n;

  do //從個(gè)位開始變成字符,直到最高位,最后應(yīng)該反轉(zhuǎn)

  { s[i++]=n%10+'0';

  }while((n=n/10)>0);

  //如果是負(fù)數(shù),補(bǔ)上負(fù)號(hào)

  if(sign<0)

  s[i++]='-';

  s[i]='\0';//字符串結(jié)束

  reverse(s);

  }

  void main()

  { int m;

  char c[100];

  printf("請(qǐng)輸入整數(shù)m: ");

  scanf("%d",&m);

  IntegerToString(c,m);

  printf("integer = %d string = %s\n", m, c);

  }

  嵌入式軟件工程師應(yīng)知道的0x10個(gè)基本問題(經(jīng)典收藏版)

  C語(yǔ)言測(cè)試是招聘嵌入式系統(tǒng)程序員過(guò)程中必須而且有效的方法。這些年,我既參加也組織了許多這種測(cè)試,在這過(guò)程中我意識(shí)到這些測(cè)試能為面試者和被面試者提供許多有用信息,此外,撇開面試的壓力不談,這種測(cè)試也是相當(dāng)有趣的。

  從被面試者的角度來(lái)講,你能了解許多關(guān)于出題者或監(jiān)考者的情況。這個(gè)測(cè)試只是出題者為顯示其對(duì)ANSI標(biāo)準(zhǔn)細(xì)節(jié)的知識(shí)而不是技術(shù)技巧而設(shè)計(jì)嗎?這是個(gè)愚蠢的問題嗎?如要你答出某個(gè)字符的ASCII值。這些問題著重考察你的系統(tǒng)調(diào)用和內(nèi)存分配策略方面的能力嗎?這標(biāo)志著出題者也許花時(shí)間在微機(jī)上而不是在嵌入式系統(tǒng)上。如果上述任何問題的答案是"是"的話,那么我知道我得認(rèn)真考慮我是否應(yīng)該去做這份工作。

  從面試者的角度來(lái)講,一個(gè)測(cè)試也許能從多方面揭示應(yīng)試者的素質(zhì):最基本的,你能了解應(yīng)試者C語(yǔ)言的水平。不管怎么樣,看一下這人如何回答他不會(huì)的問題也是滿有趣。應(yīng)試者是以好的直覺做出明智的選擇,還是只是瞎蒙呢?當(dāng)應(yīng)試者在某個(gè)問題上卡住時(shí)是找借口呢,還是表現(xiàn)出對(duì)問題的真正的好奇心,把這看成學(xué)習(xí)的機(jī)會(huì)呢?我發(fā)現(xiàn)這些信息與他們的測(cè)試成績(jī)一樣有用。

  有了這些想法,我決定出一些真正針對(duì)嵌入式系統(tǒng)的考題,希望這些令人頭痛的考題能給正在找工作的人一點(diǎn)幫助。這些問題都是我這些年實(shí)際碰到的。其中有些題很難,但它們應(yīng)該都能給你一點(diǎn)啟迪。

  這個(gè)測(cè)試適于不同水平的應(yīng)試者,大多數(shù)初級(jí)水平的應(yīng)試者的成績(jī)會(huì)很差,經(jīng)驗(yàn)豐富的程序員應(yīng)該有很好的成績(jī)。為了讓你能自己決定某些問題的偏好,每個(gè)問題沒有分配分?jǐn)?shù),如果選擇這些考題為你所用,請(qǐng)自行按你的意思分配分?jǐn)?shù)。

  預(yù)處理器(Preprocessor)

【嵌入式軟件工程師筆試題】相關(guān)文章:

德爾福軟件工程師筆試題07-03

軟件開發(fā)工程師筆試題08-03

軟件測(cè)試工程師筆試題目08-09

德爾福軟件工程師筆試題目05-05

軟件測(cè)試工程師筆試題及答案10-10

百度軟件研發(fā)工程師筆試題06-11

威盛公司軟件C++工程師筆試題08-04

筆試面試題—軟件測(cè)試工程師06-15

東軟軟件測(cè)試工程師綜合筆試題11-05

一套軟件開發(fā)工程師筆試題09-30