2016-10-02 50 views
-5

如何搜索變量中的數字?搜索號碼

例如:

  • 輸入A:12131415
    輸入搜索:1
    輸出:1 = 4
  • 輸入A:12131415
    輸入搜索:12
    輸出:12 = 1

請幫忙我。謝謝。

+3

首先,C和C++是不同的語言。你不能擁有兩個。其次,這可能是一個家庭作業問題,你會發現你最喜歡的搜索引擎的答案比在這裏寫這個問題要快。請閱讀幫助部分,瞭解如何以及在這裏要問什麼。 –

+1

我們將幫助您解決解決問題的真正嘗試。我們通常不會爲您編寫代碼。向我們展示您的最佳努力。除非有你沒有告訴我們的規則,否則你應該閱讀字符串並進行字符串分析,而不是數字分析。 –

+0

@Sami Kuhmonen是的,但請注意,這不是一項家庭作業,但這是我朋友的問題。 – Albertong27

回答

0

我不會爲您提供完整的解決方案,但這裏有一個基本的想法,您可以使用。

您可以將數字轉換爲字符串,然後計算可以在另一個字符串中找到一個字符串的次數。

以下是您可以使用的一些基本功能。這應該讓你開始。

int A = 12131415; 
int B = 1; 
int count = 0; 

char strA[20]; 
char strb[20]; 

sprintf(strA, "%d", A); 
sprintf(strB, "%d", B); 
int lenB = strlen(strB); 

char* m; 
char* t = A; 
m = strstr(t, strB); 
if (m != NULL) 
{ 
    // Found a match 
    ++count; 
} 
else 
{ 
    // No more matches 
    return; 
} 

// Move pointer 
t = m + lenB; 

// Now look for next match 
m = strstr(t, strB); 

//.... and so on.... 

你的任務是組織上面的代碼在一個循環,這樣就可以遍歷整個字符串A