亚洲AV日韩AⅤ综合手机在线观看,激情婷婷久久综合色,欧美色五月婷婷久久,久久国产精品99久久人人澡

  • <abbr id="uk6uq"><abbr id="uk6uq"></abbr></abbr>
  • <tbody id="uk6uq"></tbody>
  • 經(jīng)典C語言面試算法題

    時間:2024-10-13 16:35:49 嵌入式培訓(xùn) 我要投稿
    • 相關(guān)推薦

    經(jīng)典C語言面試算法題

      1.寫一個函數(shù),它的原形是int continumax(char *outputstr,char *intputstr)

    經(jīng)典C語言面試算法題

      功能:

      在字符串中找出連續(xù)最長的數(shù)字串,并把這個串的長度返回,并把這個最長數(shù)字串付給其中一個函數(shù)參數(shù)outputstr所指內(nèi)存。例如:"abcd12345ed125ss123456789"的首地址傳給intputstr后,函數(shù)將返回

      9,outputstr所指的值為123456789。

      #include

      #include

      #include

      int FindMax_NumStr(char *outputstr,char *inputstr)

      {

      char *in = inputstr,*out = outputstr,*temp;

      char *final;

      int count = 0;

      int maxlen = 0;

      int i;

      while(*in!='\0')

      {

      if(*in > 47 && *in < 58)

      {

      for(temp = in;*in> 47 && *in <58;in++)

      count++;

      }

      else

      in++;

      if(maxlen < count)

      {

      maxlen = count;

      count = 0;

      final = temp;

      }

      }

      for(i =0;i

      {

      *out = *final;

      out++;

      final++;

      }

      *out = '\0';

      return maxlen;

      }

      void main(void)

      {

      char input[]="abc123def123456eec123456789dd";

      char output[50] = {0};

      int maxlen;

      maxlen = FindMax_NumStr(output,input);

      printf("the str %s\n",output);

      printf("the maxlen is %d\n",maxlen);

      }

      2.求1000!的未尾有幾個0;

      求出1->1000里,能被5整除的數(shù)的個數(shù)n1,能被25整除的數(shù)的個數(shù)n2,能被125整除的數(shù)的個數(shù)n3,能被625整除的數(shù)的個數(shù)n4.1000!末尾的零的個數(shù)=n1+n2+n3+n4;

      只要是末尾是5的數(shù)它乘以一個偶數(shù)就會出現(xiàn)一個0,而末尾是0的數(shù)乘以任何數(shù)也都會出現(xiàn)0

      而末尾是0的如果是一個0肯定能被5整除,兩個0肯定能被25整數(shù),以此類推3個0就能被5的三次方整除,也就是125

      1000!就是1-1000數(shù)的相乘,能被5整除的所有數(shù)分別乘以一個偶數(shù)就會出現(xiàn)這些個的0,而例如100,既能被5整除,也能被25整除,所以就是兩個0

      1000,既能被5,25,也能被125整除,所以算三個0

      例如是10!=1*2*3*4*5*6*7*8*9*10,里面有兩個數(shù)能被5整除,就是10和5,而

      5隨便乘以一個偶數(shù)就出現(xiàn)一個0,而10乘以其它數(shù)也會出現(xiàn)一個0,所以10!會有兩個0

      #include

      #define NUM 1000

      int find5(int num)

      {

      int ret = 0;

      while(num%5==0)

      {

      num/=5;

      ret++;

      }

      return ret;

      }

      int main(void)

      {

      int result = 0;

      int i;

      for(i=5;i<=NUM;i+=5)

      result +=find5(i);

      printf("the total zero number is %d\n",result);

      return 0;

      }

      3。編寫一個 C 函數(shù),該函數(shù)在一個字符串中找到可能的最長的子字符串,且該字符串是由同一字符組成的。

      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;

      }

    【經(jīng)典C語言面試算法題】相關(guān)文章:

    2016年嵌入式面試C語言試題「精選」03-07

    計算機二級C語言真題及答案09-26

    嵌入式C語言面試題(附答案)03-17

    C語言程序的結(jié)構(gòu)03-06

    2017計算機二級考試C語言沖刺題03-10

    計算機二級C語言考試真題及答案09-30

    計算機二級考試C語言歷年真題09-26

    計算機二級C語言筆試歷年真題及答案09-30

    2017計算機二級考試C語言沖刺題及答案03-22