2016-02-13 83 views
-1

我試圖使這個程序:有沒有辦法讓C#在同一行中讀取整數和字符串?

我不知道我是否應該使用的if else或某種循環或者兩者兼而有之。這是我第一次編程課程,所以任何幫助都會很棒。

這是我到目前爲止它的作品,但它不是我想要的。

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 

namespace Assignment_3 
{ 
class Program 
{ 
    static void Exercise1(){ 


    } 

    static void Exercise2() 
    { 

     double number; 
     string character; 
     Console.Write("Enter an integer or 'q' to quit "); 
     number = double.Parse(Console.ReadLine()); 
     character = Console.ReadLine(); 
     if (number >= 1 && number <= 10 || character =="q") 
     { 
      Console.WriteLine("Coool"); 

     } 
     else 
     { 
      Console.WriteLine("Your number must be between 1 and 10"); 
     } 
    } 
    static void Main(string[] args) 
    { 
     Exercise1(); 

     Exercise2(); 

     Console.WriteLine("Press enter to end"); 
     Console.ReadLine(); 
    } 
} 
} 
+3

因此,尋找「任何幫助」是錯誤的地方 - 如果您有具體問題 - 確保通過更新您的帖子來提出要求,否則刪除帖子,但它仍然有0分可能是個好主意。 –

+0

'Console.ReadLine()'的結果是一個字符串。您可以將字符串值存儲在一個變量中,並檢查它是否等於'q'而不考慮將字符串解析爲數字。 –

+0

我做到了。它在問題的標題中,然後我問我是否應該使用循環來實現我想要的。 「任何幫助」部分是爲了幫助我清除這個新手,並且我不太確定我需要做什麼來實現這個程序,所以我只是簡單地說明我會從字面上採取任何建議來獲得幫助。 –

回答

1
static void Exercise2() 
    { 


     string entry; 
     Console.Write("Enter an integer or 'q' to quit: "); 
     entry = Console.ReadLine(); 
     while (entry.ToLower() != "q") 
     { 
      int number; 
      if (int.TryParse(entry, out number)) 
      { 
       if (number >= 1 && number <= 10) 
       { 
        Console.WriteLine("Coool"); 

       } 
       else 
       { 
        Console.WriteLine("Your number must be between 1 and 10"); 
       } 
      } 

      Console.Write("Enter an integer or 'q' to quit: "); 
      entry = Console.ReadLine(); 
     } 

    } 
0

商店的ReadLine的結果()作爲變量,並對其進行評估,檢查「Q」,那麼,如果不工作,分析變量爲int。

相關問題