现在的位置: 首页 > 综合 > 正文

C#入门经典(第五版)

2014年09月05日 ⁄ 综合 ⁄ 共 4969字 ⁄ 字号 评论关闭

开始学习,c#

第一个测试代码(控制台应用程序):

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

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("The first app in Beginning C# Programming !");
            Console.ReadKey();
        }
    }
}

第二个测试用例(Windows应用程序):

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            MessageBox.Show("The first Windows app in the book!");
        }
    }
}

测试用例三(运算符重载):

#region
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
#endregion
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("The first app in Beginning C# Programming !");
            int myInteger;
            string myString;
            myInteger = 17;
            myString = "\"myInteger\" \n is ";
            Console.WriteLine("{0} {1}.",myString ,myInteger);

            double firstNumber, secondNumber;
            string userName;
            Console.WriteLine("Enter your name:");
            userName = Console.ReadLine();
            Console.WriteLine("Welcome {0} !",userName );
            Console.WriteLine("Now give me a number:");
            firstNumber = Convert.ToDouble(Console .ReadLine ());
            Console.WriteLine("Now give me another number:");
            secondNumber  = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine("The sum of {0} and {1} is {2}.\n" ,firstNumber ,secondNumber ,firstNumber +secondNumber );
            Console.WriteLine("The sub of {0} and {1} is {2}.\n", firstNumber, secondNumber, firstNumber -secondNumber);
            Console.WriteLine("The * of {0} and {1} is {2}.\n", firstNumber, secondNumber, firstNumber * secondNumber);
            Console.WriteLine("The / of {0} and {1} is {2}.\n", firstNumber, secondNumber, firstNumber / secondNumber);
            Console.WriteLine("The % of {0} and {1} is {2}.\n", firstNumber, secondNumber, firstNumber % secondNumber);
            Console.ReadKey();
        }
    }
}

测试用例四(结构和枚举)

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

namespace ConsoleApplication2
{
    enum orientation : byte
    {
        north =1,
        south =2,
        east  =3,
        west  =4
    }
    struct rouet
    {
        public orientation direction;
        public double distance;
    }
    class Program
    {
        static void Main(string[] args)
        {
            rouet myRoute;
            int myDirection = -1;
            double myDistance;
            Console.WriteLine("1) North \n 2) South \n 3) East \n 4) West");
            do
            {
                Console.WriteLine ("Select a direction:");
                myDirection  = Convert.ToInt32(Console .ReadLine ());
            }
            while ((myDirection  < 1) || (myDirection > 4));
            Console.WriteLine("input a distance:");
            myDistance = Convert.ToDouble( Console.ReadLine() );
            myRoute.direction = (orientation)myDirection;
            myRoute.distance = myDistance;
            Console.WriteLine("myRoute specifies a direction of {0} and a " + 
                "distance of {1} ",myRoute .direction ,myRoute .distance );
            Console.ReadKey();


        }
    }
}

测试用例五(使用数组)

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

namespace ConsoleApplication3
{
    class Program
    {
        static void Main(string[] args)
        {
            string[] friendNames = {"Robert Barwell","Mike Parry",
                                    "Jeremy Beacock"};
            int i;
            Console.WriteLine("Here are {0} of my friends:",
                friendNames .Length );
            for (i = 0; i < friendNames.Length; i++)
            {
                Console.WriteLine(friendNames [i]);
            }
            Console.ReadKey();
        }
    }
}

 

c#里面还有可以使用foreach来表示循环,好处是,可以对数组中的值的访问做到只读访问,不会改变数组 中的值。
C#中关于字符串的处理:可以定义string类型。

                                          string类型的变量可以看成是char变量的只读数组。也就是说string类型实际上是一个字符串数组。

                                         定义好的string类型,可以使用这个类型的方法,来做如下 的操作:

                                           改变大小写、消去空格的影响、添加空格使字符串达到指定长度等等一些个字符处理功能

 测试用例六(函数相关)

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

namespace ConsoleApplication4
{
    class Program
    {
        static int MaxValue(int[] intArray)
        {
            int maxVal = intArray[0];
            for (int i = 1; i < intArray.Length; i++)
            {
                if (intArray[i] > maxVal)
                    maxVal = intArray[i];
            }
            return maxVal;
        }
        static void Main(string[] args)
        {
            int[] myArray = {1,8,3,6,2,5,9,3,0,2 };
            int maxVal = MaxValue(myArray);
            Console.WriteLine("The maximm value is {0}" ,maxVal );
            Console.ReadKey();
        }
    }
}

关于函数参数中的两个关键字ref和out

ref例子:

定义一个方法:
public void SetValue(ref int count)
{
count = count * 12;
}

调用方法:
int count = 10;
SetValue(ref count);

Console.Write(count);//这里count为120;

=========================================================
out 例子:

定义一个方法:
public viod SetValue(out int count)
{
count = 15;
count = count * 10;
}

调用该方法:
int count;//注意这里可以不初始化;

SetValue(count);
Cosole.Write(count);//这里count为:150

 

关于全局变量:

Static修饰的全局变量可以改变它的值,但是const修饰的值不可以改变。

测试用例七(命令行参数)

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

namespace ConsoleApplication5
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("{0} command line arguments were specified:",
                args.Length );
            foreach (string arg in args)
                Console.WriteLine(arg);
            Console.ReadKey();
        }
    }
}

从解决方案右键里面的属性里面传入参数,可以直接打印在控制台中。、

 

测试用例八(结构函数)

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

namespace ConsoleApplication6
{
    class Program
    {

        static void Main(string[] args)
        {
            customerName myCustomer;
            myCustomer.firstName = "hai";
            myCustomer.lastName = "wen";
            Console.WriteLine("{0},{1}",myCustomer .firstName,myCustomer .lastName);
            Console.WriteLine(myCustomer .Name ());
        }
        struct customerName
        {
            public string firstName, lastName;
            public string Name()
            {
                return firstName + "bobo" + lastName;
            }
        }
    }
}

结构体中可以有函数。

抱歉!评论已关闭.