2014-03-28 164 views
-5

以下代碼僅顯示The ID Does Not Exist作爲結果。可能是什麼問題?for循環不起作用

int sc = Convert.ToInt32(txtbx_id.Text); 
int n = Convert.ToInt32(txtbx_noofrecomm.Text); 
bool shart = false; 
for (int yu = 0; yu <= 92161; yu++) 
{ 
    int wer = d[yu]; 
    if (wer == sc) 
    { 
     shart = true; 
     userseq = yu; 
     var results = new List<float>(1143600); 
     for (int z = 0; z < 1143600; z++) 
     { 
      results.Add(dotproduct(userseq, z)); 
     } 
     var sb1 = new StringBuilder(); 
     foreach (var resultwithindex in results.Select((r, index) => new { result = r, Index = index }).OrderByDescending(r => r.result).Take(n)) 
     { 
      sb1.AppendFormat(CultureInfo.InvariantCulture, "{0}: {1}", c[resultwithindex.Index], resultwithindex.result); 
      sb1.AppendLine(); 
     } 
     MessageBox.Show(sb1.ToString()); 
    } 
} 
if (shart == false) 
{ 
    MessageBox.Show("The ID Does Not Exist"); 
} 
+1

嘗試通過它。 – Blorgbeard

+0

當您不向我們展示d []包含的內容或如何加載時,我們該如何判斷出現了什麼問題 –

+4

這是您在同一段代碼中掙扎的第四篇文章。請坐下來,瀏覽一下你的代碼,真正想想你在做什麼。開始的一個好地方是以一種讓他們的目的更明顯的方式命名變量,而不是'd','yu','wer'和'sc'。 –

回答

3

d[]沒有什麼等於sc

+0

否@ Khanzor。當我刪除該消息它正常工作。問題是與消息 – user3446681

+2

真的嗎?所以當你刪除消息它不顯示消息?這很有趣 –

+0

不,我的意思是結果是正確的,d []不是空的@ Selman22 – user3446681

0

嘗試刪除第二個If語句,然後將第一個if語句放入If-Else中。因此,您可以在將來有效地測試您的數據。然後,您可以將shart設置爲false,然後顯示messagebox。

if (wer == sc) 
{ 
    shart = true; 
    userseq = yu; 
    var results = new List<float>(1143600); 
    for (int z = 0; z < 1143600; z++) 
     { 
     results.Add(dotproduct(userseq, z)); 
     } 
    var sb1 = new StringBuilder(); 
    foreach (var resultwithindex in results.Select((r, index) => new { result = r, Index = index }).OrderByDescending(r => r.result).Take(n)) 
     { 
     sb1.AppendFormat(CultureInfo.InvariantCulture, "{0}: {1}", c[resultwithindex.Index], resultwithindex.result); 
     sb1.AppendLine(); 
     } 
    MessageBox.Show(sb1.ToString()); 
}else{ 
     shart = false; 
     MessageBox.Show("The ID Does Not Exist"); 
} 
+0

既然你說的數據是正確的,我們只能看到你給我們的。我假設你說,當你刪除底部if語句,你的數據對於d [] = sc是正確的,那麼所有東西都可以工作。 – CeFu