練習題 天分時秒轉換

  • 766
  • 0
  • 2013-05-01

摘要:練習題 天分時秒轉換

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
 
namespace day
{
    public partial class day : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
 
        }
 
        protected void Button1_Click(object sender, EventArgs e)
        {
            int a, b, c, d, f;
            a = Convert.ToInt32(TextBox1.Text);
            b = a / 86400;
            c = (a % 86400) / 3600;
            d = ((a % 86400) % 3600) / 60;
            f = (((a % 86400) % 3600) % 60);
            if (b > 0)
            {
                Label1.Text = b.ToString() + "天" + c.ToString() + "時" + d.ToString() + "分" + f.ToString() + "秒";
            }
            else if (b < 0 || c > 0)
            {
                Label1.Text = c.ToString() + "時" + d.ToString() + "分" + f.ToString() + "秒";
            }
            else if (c < 0 || d > 0)
            {
                Label1.Text =  d.ToString() + "分" + f.ToString() + "秒";
            }
            else if (d < 0 || f > 0)
            {
                Label1.Text = f.ToString() + "秒";
            }
        }
    }
}
 
 
!!!!縮減程式碼
 
三元運算子
 
符號    ?:   用法   a ? b : c
 

特別用法:a ? b : c ? d : e 

運算的順序為  a ? b : (c ? d : e)

而不是  (a ? b : c) ? d : e

這邊要特別小心,不要搞錯運算的順序了!

 

程式碼

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
 
namespace day
{
    public partial class day : System.Web.UI.Page
    {
       
        protected void Button1_Click(object sender, EventArgs e)
        {
            int a, b, c, d, f;
            a = Convert.ToInt32(TextBox1.Text);
            b = a / 86400;
            c = (a % 86400) / 3600;
            d = ((a % 86400) % 3600) / 60;
            f = (((a % 86400) % 3600) % 60);
          Label1.Text=(b>0) ? b.ToString() + "天" + c.ToString() + "時" + d.ToString() + "分" + f.ToString() + "秒":
              ( ( (c > 0) ? c.ToString() + "時" + d.ToString() + "分" + f.ToString() + "秒" : 
               ((d > 0) ? d.ToString() + "分" + f.ToString() + "秒":
               ((f > 0) ? f.ToString() + "秒" :"輸入錯誤" ))));
        }
    }
}