2012-04-17 35 views
0
using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 

namespace Assignment2 
{ 
class Program 
{ 
    static void Main(string[] args) 
    { 
     int Value1,Value2,result,a; 

     Console.Write("Enter Value 1: "); 
     Value1 = Convert.ToInt32(Console.ReadLine()); 

     Console.Write("Enter Value 2: "); 
     Value2 = Convert.ToInt32(Console.ReadLine()); 

     Console.WriteLine("Choose an arithmetic operator:"); 


     Console.WriteLine("\t1. +(add)"); 
     Console.WriteLine("\t2. -(subtract)"); 
     Console.WriteLine("\t3. *(multiply)"); 
     Console.WriteLine("\t4. /(divide)"); 
     Console.Write("\t5. %(mod)"); 

     Console.Write("\n\n"); 

     a = Convert.ToInt32(Console.ReadLine()); 

     switch (a) 
     { 
      case"1": 
       Console.WriteLine("Operator is: Add"); 
       result=Value1+Value2; 
       Console.WriteLine("Result: "+result); 
       break; 

      case"2": 
       Console.WriteLine("Operator is: Subtract"); 
       result=Value1-Value2; 
       Console.WriteLine("Result: "+result); 
       break; 

      case"3": 
       Console.WriteLine("Operator is: Multiply"); 
       result=Value1*Value2; 
       Console.WriteLine("Result: "+result); 
       break; 

      case"4": 
       Console.WriteLine("Operator is: devide"); 
       result=Value1/Value2; 
       Console.WriteLine("Result: "+result); 
       break; 

      case"5": 
       Console.WriteLine("Operator is: mod"); 
       result = Value1 % Value2; 
       Console.WriteLine("Result: "+result); 
       break; 
     } 
    } 
} 
} 

我有基本的C#和我努力使可以使用Case語句運行5算術操作的程序,當我完成了我的coding..i發現5錯誤這使得我卡住了...和輸出將始終與2結果(即我選擇添加...和2輸出將出現,它的加法和減法在同一時間..有人可以幫我這個嗎?不能鍵入「串」隱式轉換爲「廉政」錯誤

+1

刪除周圍的數引號在'case'語句。你想把它們當作整數,而不是字符串。 – 2012-04-17 04:56:27

回答

2

該違規代碼是你的病例陳述a是一個int你的病例陳述全部使用string s只需刪除數字周圍的引號:

switch(a) 
{ 
    case 1: 
      // some code 
      break; 
    case 2: 
      // some code 
      break; 
    // rest of cases 
} 
+0

非常感謝!我沒有想到,我有錯誤的報價,因爲我只是按照什麼在我的notes..and裏面,說明他們把報價在該案(即案件「1」:)...再次感謝你..現在我的編碼100%完成。 :) – 2012-04-17 05:10:08

0

您正在將a轉換爲int,但您的switch語句將其與字符串進行匹配。將其更改爲case 1:而不是case "1"來解決問題。

0

刪除引號以防萬一。即

更換case "1":case 1:

相關問題