韩迎龙 发表于 2013-1-2 23:01:06

C#基础系列第一篇

<div id="cnblogs_post_body">前言: 完全是我在学习过程中记录的笔记,只不过分享一下让很多刚开始学习.net编程的人能够很快的学会C#语言

[*]托管代码,非托管代码
(1) 凡是由.net生成的代码,需要CLR运行的代码均为托管代码
(2) 不由CLR进行维护的执行代码为非托管代码

[*]break和Continue的区别
(1)举例说明:
            static void Main(string[] args)
      {
            for (int i = 0; i < 10; i++)
            {
                if (i == 2)
                {
                  //break;
                  continue;
                }
            }
      }
   注:在这里可以使用调试的功能看一下结构

[*]交换变量的做法
    int num1 = 5;
            int num2 = 10;
       (1)第一种写法(建议使用这种最好)
            int temp = num1;
            num1 = num2;
            num2 = temp;   
       (2)第二种写法
            num1 = num1 + num2;
        num2 = num1 - num2;
        num1 = num1 - num2;
       (3)第三种写法
            num1 = num1 | num2;
        num2 = num1 ^ num2;
        num1 = num1 ^ num2;
       (4)第四种写法(只有基于堆栈的编译起中可以执行)
            num1 = num2 + (num2 = num1) * 0;
       (5)第五种写法(使用这种写法的时候必须要保证两个变量都不能为0)
            num1 = num1 * num2;
          num2 = num1 / num2;
        num1 = num1 / num2;
       Console.WriteLine("num1={0},num2={1}", num1, num2);

[*]方法(方法就是复用模块)
(1) 没有参数和返回值的方法
            语法: void 方法的名字()
            {
                   //方法体
            }
            public static void Func()
      {
            Console.WriteLine("我要做网站了");
      }
   (2)如果是Main方法调用该方法,现在要在方法前加上static(标有static(静态)的方法只能直接调用)
   (3)带有参数的方法
            语法:public static void 方法名(方法类型 参数的变量名)
            {
                   //方法体
            }
            public static void FuncReplace(int money)
      {
            if (money >= 1000)
            {
                Console.WriteLine("可选择的网站");
            }
            else if (money >= 500)
            {
                Console.WriteLine("简单的网站");
            }
            else
            {
                Console.WriteLine("资金短缺");
            }
      }
   (4)带有参数具有返回值的方法
            语法: static 返回值类型 方法名(参数类型 参数)
            {
                   //
            }
            public static int GetNum(int num)
      {
            return num * 2;
      }
            执行方法
            int res= GetNum(3);
      Console.WriteLine(res);
   (5)实现Max方法与Min方法
            class Program
            {
                   static void Main(string[] args)
                   {
                        int num1 = 12;
                        int num2 = 34;
                        int max = Max(num1, num2);
                        int min = Min(num1, num2);
                        Console.WriteLine("较大的数字是:{0}",max);
                        Console.WriteLine("较小的数字是:{0}",min);
                        Console.ReadKey();
                   }
                   public static int Max(int n1, int n2)
                   {
                        /*
                        if (n1 > n2)
                        {
                                 return n1;
                        }
                        else
                        {
                                 return n2;
                        }
                           */
                        int num = 0;
                        if (n1 > n2)
                        {
                                 num = n1;
                        }
                        else
                        {
                                 num = n2;
                        }
                        return num;
                   }
                   public static int Min(int n1, int n2)
                   {
                        return n1 > n2 ? n2 : n1;//三元表达式
                   }
            }   
   (6)求Min和max之间的奇数的和
            class Program
            {
                   static void Main(string[] args)
                   {
                        int res = SumOdd(3, 7);
                        Console.WriteLine(res);
                        Console.ReadKey();
                   }
                   public static int SumOdd(int min, int max)
                   {
                        int res = 0;
                        for (int i= min; i <= max; i++)
                        {
                                 if (i % 2 != 0)
                                 {
                                        res += i;
                                 }
                        }
                        return res;
                   }
            }
   (7)求最大数
            class Program
            {
                   static void Main(string[] args)
                   {
                        int[] nums = { 12, 34, 54, 65, 76,454 };
                        int res = GetNUum(nums);
                        Console.WriteLine(res);
                        Console.ReadKey();
                   }
                   public static int GetNUum(int[] nums)
                   {
                        int max = 0;
                        for (int i = 0; i < nums.Length; i++)
                        {
                                 if (nums > max)
                                 {
                                        max = nums;
                                 }
                        }
                        return max;
                        //return nums.Max();
                   }
            }
   (8)写三个方法,分别完成
            1、不带参数,完成任意整数的输入,如果出现错误提示,并继续输入,返回整数
                   int InputNum_1()
            2、带一个参数,完成0到该数范围的整数输入
                   int InPutNum_2(int max)
            3、带两个参数,完成这两个数字之间的整数输入
                   int InPutNum_3(int min, int max)
<div class="cnblogs_Highlighter">class Program{static void Main(string[] args){Console.Write("请输入一个数字:");int num = GetInputNum(9,17);Console.WriteLine(num * 2);Console.ReadKey();}/// <summary>/// 完成任意int范围的数字的输入并返回/// </summary>/// <returns></returns>public static int GetInputNum(){return GetInputNum(int.MinValue, int.MaxValue);}/// <summary>/// 完成int类型数据的输入,并返回,要求输入的数字在0到给定的数字之间/// </summary>/// <param name="max">给定的数字的上限</param>/// <returns></returns>public static int GetInputNum(int max){return GetInputNum(0, max);}/// <summary>/// 完成int数字的输入,要求在给定范围之间/// </summary>/// <param name="min">给定范围的下线</param>/// <param name="max">给定范围的上线</param>/// <returns></returns>public static int GetInputNum(int min,int max){string str = Console.ReadLine();int num;while (true){try{num = Convert.ToInt32(str);if (num > min && num < max){break;}Console.Write("输入数字不再{0}到{1}之间,请重新输入", min,max);str = Console.ReadLine();}catch{Console.Write("输入有误,请重新输入");str = Console.ReadLine();}}return num;}}
页: [1]
查看完整版本: C#基础系列第一篇