欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C++ 面試題翻譯電話(huà)號(hào)碼實(shí)例代碼

 更新時(shí)間:2017年04月28日 08:54:43   投稿:lqh  
這篇文章主要介紹了C++ 面試題翻譯電話(huà)號(hào)碼實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下

C++ 面試題翻譯電話(huà)號(hào)碼實(shí)例代碼

例如:

輸入:OneTwoThree
輸出:123

輸入:OneTwoDoubleTwo
輸出:1222

輸入:1Two2
輸出:ERROR

輸入:DoubleDoubleTwo
輸出:ERROR

有空格,非法字符,兩個(gè)Double相連,Double位于最后一個(gè)單詞 都錯(cuò)誤。

#include <iostream>  
#include <string>     
using namespace std;   
   
void process(string str)   
{   
  //各字符串的下標(biāo)即為其對(duì)應(yīng)的阿拉伯?dāng)?shù)字   
  char *ch[]={"zero","one","two","three","four","five","six","seven","eight","nine","double"}; 
  char *out[100];//存儲(chǔ)結(jié)果集 
 
  int f=0; 
  int i,j,k;  
   
  string substr;   
  int len=str.length();  
  int flag=0;//判斷double出現(xiàn) 
  int flag2=0;//判斷內(nèi)循環(huán)有無(wú)break 
 
  for(i=0;i<len;i++)   
  {  
    if(flag2) 
      break; 
    else if(str[i]<97 || str[i]>122)//非字母字符 
    { 
      out[f++]="error"; 
      break; 
    } 
    else{ 
      //可以看出拼音最短為3個(gè)字符,最長(zhǎng)為6個(gè)字符   
      for(j=i+2;j<len&&(j-i)<6;j++)   
      {   
        substr=str.substr(i,j-i+1);   
        if(!substr.compare(ch[10]))//出現(xiàn)double 
        { 
          if(i==len-6)//最后一個(gè)double 
          { 
            out[f++]="error"; 
            flag2=1; 
            break; 
          }else if(flag){//連續(xù)兩個(gè)double 
            out[f++]="error"; 
            flag2=1; 
            break; 
          }else 
            flag=1; 
        } 
        else{ 
          for(k=0;k<10;k++)  
          { 
            if(!substr.compare(ch[k]))   
            {   
              if(flag){ 
                out[f++]=ch[k]; 
                out[f++]=ch[k]; 
                flag=0; 
                break;                
              } 
              else{ 
                out[f++]=ch[k];   
                break; 
              } 
            }  
          } 
        } 
      }  
    } 
  }  
   
  int flag3=0;//看有無(wú)error,默認(rèn)沒(méi)有error 
  for(int r=0;r<f;r++){ 
    if(out[r]=="error")//有error 
      flag3=1; 
  } 
 
  if(!flag3) 
    for(r=0;r<f;r++) 
      for(k=0;k<10;k++)  
      { 
        if(out[r]==ch[k])   
          printf("%d",k); 
      } 
  else 
    printf("error"); 
 
  printf("\n");  
}   
   
void main()  
{  
  string str;   
  while(getline(cin,str))  
    process(str);  
}  

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • C++找出字符串中出現(xiàn)最多的字符和次數(shù),時(shí)間復(fù)雜度小于O(n^2)

    C++找出字符串中出現(xiàn)最多的字符和次數(shù),時(shí)間復(fù)雜度小于O(n^2)

    今天小編就為大家分享一篇關(guān)于C++找出字符串中出現(xiàn)最多的字符和次數(shù),時(shí)間復(fù)雜度小于O(n^2),小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-12-12
  • Qt定時(shí)器和隨機(jī)數(shù)詳解

    Qt定時(shí)器和隨機(jī)數(shù)詳解

    在前一篇中我們介紹了鍵盤(pán)和鼠標(biāo)事件,其實(shí)還有一個(gè)非常常用的事件,就是定時(shí)器事件,如果要對(duì)程序?qū)崿F(xiàn)時(shí)間上的控制,那么就要使用到定時(shí)器。而隨機(jī)數(shù)也是很常用的一個(gè)功能,在我們要想產(chǎn)生一個(gè)隨機(jī)的結(jié)果時(shí)就要使用到隨機(jī)數(shù)。本文我們就來(lái)簡(jiǎn)單介紹一下定時(shí)器和隨機(jī)數(shù)。
    2015-06-06
  • .h和.cpp文件的區(qū)別(zt)詳細(xì)介紹

    .h和.cpp文件的區(qū)別(zt)詳細(xì)介紹

    特別是對(duì)源文件和頭文件的概念,需要深入對(duì)它了解,本文將詳細(xì)介紹,需要了解的朋友可以參考下
    2012-11-11
  • 一文帶你學(xué)會(huì)C語(yǔ)言中的qsort函數(shù)

    一文帶你學(xué)會(huì)C語(yǔ)言中的qsort函數(shù)

    qsort函數(shù)是C語(yǔ)言的庫(kù)函數(shù),能實(shí)現(xiàn)對(duì)各種元素類(lèi)型的比較,使用的基本思想是快速排序法,頭文件是<stdlib.h>,本文不講解具體實(shí)現(xiàn)原理,只對(duì)使用方法進(jìn)行說(shuō)明,希望對(duì)大家有所幫助
    2022-12-12
  • 利用Matlab制作三子棋游戲的示例代碼

    利用Matlab制作三子棋游戲的示例代碼

    三子棋是一種民間傳統(tǒng)游戲,又叫九宮棋、圈圈叉叉、一條龍、井字棋等。將正方形對(duì)角線(xiàn)連起來(lái),相對(duì)兩邊依次擺上三個(gè)雙方棋子,只要將自己的三個(gè)棋子走成一條線(xiàn),對(duì)方就算輸了。本文將用Matlab制作這一經(jīng)典游戲,感興趣的可以試一試
    2022-03-03
  • C++實(shí)現(xiàn)鬧鐘程序的方法

    C++實(shí)現(xiàn)鬧鐘程序的方法

    這篇文章主要介紹了C++實(shí)現(xiàn)鬧鐘程序的方法,比較實(shí)用的功能,需要的朋友可以參考下
    2014-08-08
  • 關(guān)于C語(yǔ)言位運(yùn)算的簡(jiǎn)單示例

    關(guān)于C語(yǔ)言位運(yùn)算的簡(jiǎn)單示例

    這篇文章主要介紹了關(guān)于C語(yǔ)言位運(yùn)算的簡(jiǎn)單示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • C語(yǔ)言編寫(xiě)猜數(shù)游戲

    C語(yǔ)言編寫(xiě)猜數(shù)游戲

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言編寫(xiě)猜數(shù)游戲,可以自定義猜數(shù)范圍和機(jī)會(huì)次數(shù),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • C++ 命名空間--namespace總結(jié)

    C++ 命名空間--namespace總結(jié)

    namespace中文意思是命名空間或者叫名字空間,下面這篇文章主要給大家介紹了關(guān)于C++中名稱(chēng)空間namespace使用的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起看看吧
    2021-09-09
  • 解決c++?error:crosses?initialization?of?問(wèn)題

    解決c++?error:crosses?initialization?of?問(wèn)題

    最近在寫(xiě)代碼的時(shí)候,碰到了?crosses?initialization?of?...?的問(wèn)題,只因我在?switch?的某個(gè)?case?分支下定義了一個(gè)變量,于是乎便將這個(gè)問(wèn)題整理一下,需要的朋友可以參考下
    2023-03-03

最新評(píng)論