2017-9-15第一次學習C#內容(隱式轉換,語句,輸入輸出,格式字串,樣本)

來源:互聯網
上載者:User

標籤:定義類   傳回值   樣本   數列   bsp   自己的   而不是   text   image   

  1. 類型轉換

1).隱式轉換

 

注意:

隱式轉換中不存在向char類型的隱式轉換,float和double類型也不能隱式轉換為decimal型.

2)強制類型轉換

(目標類型) (運算式)

3)其他方式的轉換\

①Parse

目標類型.Parse(待轉換字串)

②as

as運算子用以在相容的參考型別之間執行某些類型的轉換。如果要轉換的類型與指定的類型相容,轉換就會成功,反之,就會失敗as運算子就會返回null而不是引發異常。

③裝箱與拆箱

裝箱和拆箱能使實值型別能夠與object類型發生轉換

裝箱是將實值型別轉換為參考型別,即分配一個對象執行個體並將“實值型別”的值複製到該執行個體中。

而拆箱是將參考型別轉換為實值型別。拆箱操作首先檢查對象執行個體,確保它是給定實值型別的一個裝箱值,然後將該 值從對象執行個體複製到實值型別變數中。

//自己總結:拆箱和裝箱使一個依存的操作只有在裝箱的基礎上才存在所謂的拆箱。

 

  1. 語句

1) 可作為語句的運算式:

使用new運算子的對象分配   A=new object();

各種賦值運算

自增自減運算

2)  方法調用語句

對象名.方法名(參考列表);//調用不同類的執行個體方法 

String  s=”hello“’; s=s.ToUpper();

類名.方法名(參考列表);//調用不同類的靜態方法   Console.WriteLine(“Hello”);

方法名(參考列表);//調用同一類的方法         Max (a,b);

  1. 輸入輸出

C#中並不提供輸入輸出語句,其輸入輸出操作是藉助於一些預定義類來實現的。

Console類提供用於從控制台讀取單個字元或整行的方法,並且該類還可將實值型別的資料,字元數組以及對象集自動轉換為格式化或未格式化的字串,然後將該字串寫入控制台。

使用Console類需要在來源程式開頭使用using指令進行命名空間system的引入如果沒有引入該命名空間則需要在程式設計的時候使用Console的完全限定名,應把Console替換為System。Console

1)  輸入方法

①  Read    Read方法從標準輸入資料流讀取下一個字元。其返回是輸入資料流種下一個字元的Unicode編碼值,傳回值類型是System.Int32;如果當前沒有更多的字元可供讀取則返回1.定義的方法: public static int Read();

注意: Read方法只有在同時ctrl+Z,發出到達檔案的結尾的時候;按發出檔案結尾條件的等效按鍵例如windows中的F6;將輸入資料流重新導向到具有實際的檔案尾字元的源,例如文字檔。

②  ReadLine   從標準的輸入資料流中讀取下一行的字元,其傳回值類型為System.String;如果沒有更多的可用行,則返回null方法定義如下:public statid string ReadLine();如果在該方法讀取輸入的時候按curl+z則返回的為null

③  ReadKey

ReadKey方法擷取使用者的下一個字元或者功能鍵。傳回值類型為:System.ConcoleKeyInfo,描述Consolekey常數和對應於按下控制台鍵的Unicode字元(如果存在這樣的字元)

ConsoleKeyInfo對象還以ConsoleModifiers值得安位組合描述按在控制台鍵的同步選取shift,Alt,Ctrl鍵中的一個。

兩種重載方法如下:public static consoleJKeyInfo  ReradKey();

                  Public static ConsoleKeyInfo  ReadKey(bool intercept);

2)  輸出方法

①  Writer       輸出後並沒有自動換行

②  WriterLine   輸出後自動換行

WriteLine(輸出項);

WriterLine(格式控制,輸出資料行表);Console.WriterLine(“{0:X}”,d); //將d按16進位輸出後斷行符號

WriterLine(); //輸出空行

 

4.格式字串

             格式項:

     {索引 [,對齊]  [:格式字串] }

①  索引  ,即強制“索引”組件(也叫作參數說明符)是一個從0開始的數字,可表示對象列表中對應的第多少項;通過指定同樣的參數說明符,多個格式項可以指定對象列表中的同一個元素//自己的話說就是方便為同一個參數項設定不同的格式類型而已。

例如 {0:X}{0:E}{0:N}的複合格式字串,可以將第一個清單項目的數值設定為16進位,科學計數法和數字格式進行輸出

 

②  對齊  正數為靠右對齊反之

③  如果指定格式說明符則需要使用冒號:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5.當四個數字相比較的時候怎樣使if 的嵌套相對比較少的選擇如下:

中心思想就是兩個兩個的相互比較,從中選擇出相對應的關係出來

代碼:    int a, b, c, d,t;

           a = Convert.ToInt32(Console.ReadLine()); //這樣的話每次的輸入都要以斷行符號鍵結束

            b = Convert.ToInt32(Console.ReadLine());

            c = Convert.ToInt32(Console.ReadLine());

            d = Convert.ToInt32(Console.ReadLine());

            if (a > b) { t = a; a = b; b = t; }

            if (a > c) { t = a; a = b; b = t; }

            if (a > d) { t=  a; a = d; d = t;}

            if (b > c) { t = b ; b = c; c = t;}

            if (b > d) { t = b; b = d; d = t; }

            if (c > d) { t = c ; c = d; d = t;}

            Console .WriteLine ("{0},{1} ,{2},{3}",a, b, c, d);

 

 

6.兔子繁殖問題

題目:有一對兔子,從出生後第三個月起每月生一對兔子,小兔子長到第三個月又生一對兔子,假如兔子都不會死亡,那麼將會在第幾個月的時候兔子的數量達到100對??

::兔子的數量規律的數列:1,1,2,3,5,8,。。。。,即從第三個月開始兔子的數量為前每兩個月的兔子之和,是著名的斐波那契數列。

代碼:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

 

namespace ConsoleApplication1

{

    class Program

    {

        static void Main(string[] args)

        {

            int i, f1 = 1, f2 = 1,fn;

            for (i = 3; ; i++)

            {

                fn = f1 + f2;

                if (fn >= 100)

                {

                    Console.WriteLine("第{0}個月兔子的數量達到ì了100對?", i);

                    break;

                }

                f1 = f2;

                f2 = fn;

            }

            Console.ReadLine();

        }

    }

}

2017-9-15第一次學習C#內容(隱式轉換,語句,輸入輸出,格式字串,樣本)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.