2012-04-17 62 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:

相关问题