C#if and switch
阿新 • • 發佈:2018-12-05
using System; namespace homework2 { class MainClass { public static void Main (string[] args) { /* * 從鍵盤輸入一個算數運算式,使用if語句實現正確的算數運算,並輸出運算結果。 作業目標及能力提升 熟練掌握運算子和基本資料型別的使用 熟練掌握分支結構的使用 鍛鍊邏輯思維 解題思路 通過接收輸入的三個值,並進行型別轉換,然後再進行計算。 先判斷輸入的操作符,然後根據操作符進行相應的算數運算。 注意除法運算中,除數不能為0 參考答案 輸入: 3 + 4 輸出:3+4=7 */ //定義月份 double first = Convert.ToDouble (Console.ReadLine ()); // string sign = Convert.ToString (Console.ReadLine()); double second = Convert.ToDouble (Console.ReadLine ()); if (sign == "+") { Console.WriteLine ("{0}+{2}={3}", first, second, first + second); } if (sign == "-") { //... } //*/ else{ Console.WriteLine ("計算不支援的運算子"); } /* 第五題:輸入一個生日日期,輸出其星座. 白羊座:3.21-4.19,金牛座:4.20-5.20,雙子座:5.21-6.21,巨蟹座:6.22-7.22 獅子座:7.23-8.22,處女座:8.23-9.22,天秤座:9.23-10.23,天蠍座:10.24-11.22 射手座:11.23-12.21,魔羯座:12.22-1.19,水瓶座:1.20-2.18,雙魚座:2.19-3.20 解題思路 使用輸入語句接收使用者從控制檯輸入的內容。 使用強制型別轉換方法,將輸入的字串轉換為整數。 使用switch語句,寫清楚所有的月份分支。 在每個月份分支中,新增日期的判斷。 新增對應的輸出語句。 可以新增對輸入日期正確性的判斷。 */ //定義月份 int mt = Convert.ToInt32(Console.ReadLine()); //定義日期 int dy = Convert.ToInt32 (Console.ReadLine ()); switch (mt) { case 1: { if (dy >= 1 && dy < 20) { Console.WriteLine ("摩羯座"); } else if (dy > 19 && dy <= 31) { Console.WriteLine ("水瓶座"); } else { Console.WriteLine("您輸入的日期有誤!"); } break; case 2: { //.... } break; //... case 12: { //... } break; default: Console.WriteLine ("您輸入的月份有誤!"); } /* 某城市普通計程車收費標準如下:"起步里程3公里,起步費10元; 超起步里程後10公里內,每公里租費2元,超過10公里以上的部分加收50%的回空補貼費,即每公里租費3元。 營運過程中,因路阻及乘客要求臨時停車的,每5分鐘按1公里租費計收。運價計費尾數四捨五入,保留到元。"。 編寫程式,輸入行駛里程(公里)與等待時間(分鐘),計算並輸出乘客應支付的車費(元)。 輸入輸出示例:括號內是說明 輸入 3.1 6 (行駛3.1公里,等待6分) 輸出 cost = 13 作業目標及能力提升 熟練掌握輸入語句和型別轉換語句的使用 熟練掌握if語句的使用 熟練掌握關係運算符和邏輯運算子的組合使用 鍛鍊程式設計邏輯思維能力 */ //總金額 double cost; //行駛里程 Console.WriteLine("輸入行駛的里程"); double run = Convert.ToDouble(Console.ReadLine()); //等待時間 Console.WriteLine("輸入等待的時間"); double minute = Convert.ToDouble(Console.ReadLine()); //將等待的時間轉換為里程,在進行運算 //每五分鐘按1公里算 run+=minute/5; //三公里以內 if(run<=3){ cost=10; } //三公里到10公里 else if(run>3&&run<=10){ cost=10+(run-3)*2; } //10公里以外 else{ cost=10+(10-3)*2+(run-10)*3; } Console.WriteLine("0:f0",cost); } } }