程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C#--第2周實驗--任務三--編寫一個控制台應用--輸入x計算並輸出分段函數F(x)的值

C#--第2周實驗--任務三--編寫一個控制台應用--輸入x計算並輸出分段函數F(x)的值

編輯:C#入門知識

/* (程序頭部注釋開始)
* 程序的版權和版本聲明部分
* Copyright (c) 2011, 煙台大學計算機學院學生
* All rights reserved.
* 文件名稱:編寫一個控制台應用--輸入x計算並輸出分段函數F(x)的值
* 作 者: 雷恆鑫
* 完成日期: 2012 年 09 月08 日
* 版 本 號: V1.0
* 對任務及求解方法的描述部分
* 輸入描述: 
* 問題描述:
* 程序輸出:
* 程序頭部的注釋結束
*/
 
 
[csharp]
<span style="font-size:24px;">using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
 
namespace ConsoleApplication_read_string 

    class Program 
    { 
        static void Main(string[] args) 
        { 
            double d;//如果不加double  
            char c='a';//循環控制變量 
            Console.Write("請輸入一個數:"); 
            string s = Console.ReadLine(); 
            double x = double.Parse(s); 
            while (!c.Equals('e'))   //當字符c等於e時結束循環   
            { 
                if (x != 0) 
                { 
                    d = 1 / x;//如果加double 
                } 
                else 
                { 
                    d = 0;   //如果不加double ,提示當前上下文中不存在名稱“d”; 
                } 
                //double d1 = double.Parse(d.ToString("1F")); 
                //string d1 = Convert.ToDecimal("d").ToString("0.00");  
                //string bb = d.ToString().Substring(0, d.ToString().LastIndexOf(". ") + 3); 
                //string bb = d.ToString().Substring(0, d.ToString().LastIndexOf(". ") + 3 < d.() ? d.Length : d.ToString().LastIndexOf(". ") + 3); 
                Console.WriteLine("\r\n不四捨五入,分段函數f(x)的值是:{0}", Math.Round(d, 1)); 
                //Console.WriteLine("\r\n四捨五入,分段函數f(x)的值是:{0}",d1); 
                Console.Write("還想繼續運算嗎?按“e”結束運算,按其他鍵繼續運算!");   
                c = Console.ReadKey().KeyChar; 
                Console.WriteLine(); 
                if(c.Equals('e')) 
                { 
                    break; 
                } 
                else 
                { 
                    Console.Write("請輸入一個數:"); 
                    s = Console.ReadLine(); 
                    x = double.Parse(s); 
                } 
 
            } 
            Console.ReadKey(false); 
        } 
    } 

</span> 

運行結果:

 
經驗積累:
1.把字符強制轉換成double型以下兩種方法都可以。
[csharp]
<span style="font-size:24px;"> x = Convert.ToDouble(s); 
 x = double.Parse(s);</span> 
 
問題:
1.“C#中用哪個函數保留兩位小數?”
Math.Round(d, 1)只是把最後一位捨棄了,沒有四捨五入。
網絡上提供的方法有不可行,自己編的有點麻煩。
請各位大俠想想辦法,有沒有現成的函數可用。
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved