• 从0开始学习C#第二天


    今天有点小忙,一会儿抽出时间来学习。先要去见个客户,回来写个方案,下面继续学习。

    今天的学习目标

    zy10
    1、理解掌握数据类型的隐式转换。
    2、理解掌握数据类型的显式转换。
    3、掌握字符串和数值间的转换方法。

    short a=22222; //short[-32768--+32767] int 型包含short unshort[0--+65535]
                int n; //short 占2个字节16位 int 型4个字节32位
                n = a; //隐式转换 short型可以转换成int
                Console.WriteLine("n={0}",a);



    zy11
    1、通过一个程序体验一下流程控制。(不需要完全理解这个程序)
    2、理解算法的概念。
    3、理解程序的顺序结构。

    //基姆拉尔森公式的BUG,每年的1月,2月被让为13月和14月
                int y, m, d;
                Console.WriteLine("请输入年月日");
                y = Convert.ToInt32(Console.ReadLine());
                m = Convert.ToInt32(Console.ReadLine());
                d = Convert.ToInt32(Console.ReadLine());
                if (m == 1 || m == 2) {
                    m += 12;
                    --y;
                }
                int week = (d + 2 * m + 3 * (m + 1) / 5 + y + y / 4 - y / 100 + y / 400 + 1) % 7;
                string weekstring = "";
                switch (week)
                {
                    case 0:
                        weekstring = "星期天";
                        break;
                    case 1:
                        weekstring = "星期一";
                        break;
                    case 2:
                        weekstring = "星期二";
                        break;
                    case 3:
                        weekstring = "星期三";
                        break;
                    case 4:
                        weekstring = "星期四";
                        break;
                    case 5:
                        weekstring = "星期五";
                        break;
                    case 6:
                        weekstring = "星期六";
                        break;
                }
                Console.WriteLine(weekstring);
              }
    
    //已知三角形的三条边a,b,c 求面积
                //海伦公式
                double a, b, c, p,s;
                Console.WriteLine("三角形的三条边");
                a = Convert.ToDouble(Console.ReadLine());
                b = Convert.ToDouble(Console.ReadLine());
                c = Convert.ToDouble(Console.ReadLine());
                p = (a + b + c) / 2;
                s = Math.Sqrt(p*(p-a)*(p-b)*(p-c));
                Console.WriteLine("三角形的面积为:{0}",s);
    



    zy12
    1、认识关系运算符,并理解掌握逻辑表达式。
    2、认识三种逻辑运算符&& (且)   ||(或)    !(非)。
    3、总结多种运算符的优先级。
    4、掌握布尔变量的定义和使用。

    //布尔值运算
                bool isFFFF;
                isFFFF = (4!=0);
                Console.WriteLine(isFFFF);
                isFFFF = false;
                Console.WriteLine(isFFFF);
    


    zy13
    1、认识选择结构,掌握最常用的if  else选择流程控制的程序编写方法。
    2、掌握单分支if选择流程控制的程序编写方法。
    3、掌握多分支if else if else ……选择流程控制的程序编写方法。
    4、掌握嵌套选择结构流程控制的程序编写方法。
    5、能够会用流程图设计选择结构。

      //求分支函数的值
                double a;
                a = Convert.ToDouble(Console.ReadLine());
                if (a > 0)
                {
                    a++;
                }
                else {
                    if (a == 0) { a = 0; }
                    else
                    {
                        a--;
                    }
                }
                Console.WriteLine(a);
    


    zy14
    1、掌握多分支选择结构switch语句编程方法。
    2、掌握switch语句编程的遍历过程。
    3、掌握条件表达式?:选择结构。
    4、通过深化练习,继续跟踪变量的变化过程。

    //计算哪年的年月日是当年的第几天,原理:先计算当年的剩余天数,然后用365-剩余的天数
                int y, m, d;
                Console.WriteLine("请输入年月日");
                y = Convert.ToInt32(Console.ReadLine());
                m = Convert.ToInt32(Console.ReadLine());
                d = Convert.ToInt32(Console.ReadLine());
                int total = 365;//平年
                if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0)  //total = (y % 4 == 0 && y % 100 != 0 || y % 400 == 0) ? (total - 29) : (total - 28);条件选择也一样
                {
                    total = 366;
                }
                switch (m) {
                    case 1: total -= 31; goto case 2;
                    case 2:
                        if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0)
                        {
                            total -= 29;
                        }
                        else {
                            total -= 28;
                        }
                        goto case 3;
                    case 3: total -= 31;goto case 4;
                    case 4: total -= 30;goto case 5;
                    case 5: total -= 31;goto case 6;
                    case 6: total -= 30;goto case 7;
                    case 7: total -= 31;goto case 8;
                    case 8: total -= 31;goto case 9;
                    case 9: total -= 30;goto case 10;
                    case 10: total -= 31;goto case 11;
                    case 11: total -= 30; goto case 12;
                    case 12: total -= 31; break;                        
                }
                
                Console.WriteLine("{0}年{1}月{2}日是第{3}天", y, m, d, total+d);
    



    zy15
    1、掌握循环结构的算法,并理解循环结构中的变量变化过程。
    2、掌握while循环语句的编程过程。
    3、理解什么是死循环。

     //计算1+100;
                double  sum;
                int i = 1;
                sum = 0;
                while (i <= 100) {
                   sum += i;
                   i++;
                   
                }
                Console.WriteLine(sum);
    



    zy16
    1、掌握do-while循环语句的编程过程。并知道do-while和while的区别。
    2、掌握for循环语句的编程过程。
    3、掌握break语句和continue语句的用法。并知两者用法上的区别。
    4、通过一个程序练习,学习掌握循环嵌套。

    //求1+2+3+...i<2013
                int i = 0;
                int sum=0;
                do
                {
                    i++;
                    sum =sum+i;
                } while (sum< 2005);
    
                Console.WriteLine(i);
    



    zy17
    1、掌握枚举类型的定义和使用。
    2、掌握结构体的定义和使用。

    enum WeekDays { Sunday, Monday,Tuesday,Wednesday,Thuresday,Friday,Saturday };
    
    namespace first_
    {
        class first
        {
            static void Main(string[] args)
            {
                //用for 语句的阶层n!=1!+2!+3!....N!            
                //百元买百鸡 每只公鸡5,每只母鸡3,3只小鸡1元。问100元买100只鸡,几个公,几只母,几只小?
                //练习一下勾股定理:a*a+b*b=c*c 
                //enum枚举 在类的外面,或者在函数的外面定义
                WeekDays today;
                today = WeekDays.Saturday;
                if (today == WeekDays.Saturday || today == WeekDays.Sunday) { Console.WriteLine("I love weekday"); }
                         
    
            }
        }
    }
    
    //enum枚举 在类的外面,或者在函数的外面定义
                WeekDays today;
                today = (WeekDays)3;
                Console.WriteLine(today);
                WeekDays today1;
                today1 = WeekDays.Friday;
                Console.WriteLine((int)today1);
                //用for 语句来做一下枚举类型的循环 可以参与运算
                WeekDays today2;
                for (today2 = WeekDays.Sunday; today2 <= WeekDays.Saturday; today2++) { Console.WriteLine(today2); }
    
    struct student
    {//结构体
        public int number;
        public string name;
        public string sex;
    }
    
    namespace first_
    {
        class first
        {
            static void Main(string[] args)
            {
                student root;
                root.number = 001;
                root.name = "root";
                root.sex = "男";
                student pro;
                pro.number = 002;
                pro.name = "pro";
                pro.sex = "女";
                Console.WriteLine("姓名:" + root.name);
                Console.WriteLine("性别:" + root.sex);
                Console.WriteLine("姓名:" + pro.name);
                Console.WriteLine("性别:" + pro.sex);
                         
    
            }
        }
    }
    



    zy18
    1、掌握一维数组的定义和使用。
    2、掌握Length属性的用法。
    3、掌握foreach循环语句在数组中的使用。

    //一维数组
                int []scors = { 123, 111, 134, 123, 111 };
                int i = 0;
                int sum1 = 0;
                for (i = 0; i < scors.Length; i++) 
                { 
                    Console.WriteLine(scors[i]);
                    sum1 += scors[i];
                
                }
                Console.WriteLine(sum1);   
    
      //一维数组foreach 的使用
                string[] fridname = { "1","2","3","4", "5" };
                foreach (string name in fridname)
                {
                    Console.WriteLine(name);
                }
    



    zy19
    1、掌握二维数组的定义和使用,由此推到多维数组。
    2、掌握二维数组的for循环及foreach循环。
    3、掌握可变数组的定义和使用。
    4、掌握foreach循环语句在可变数组中的使用。

    //多维数组
               int [,]Matrix=new int[3,3]{{1,2,3},{4,5,6},{7,8,9}};
               int sum = 0;
                for (int i=0;i<3;i++)
                {
                    for (int j=0;j<3;j++)
                    {
                        Console.WriteLine(Matrix[i,j]+"");
                        sum+=Matrix[i,j];
                    }
    
                }
                Console.WriteLine("sum={0}",sum);
    
     //多维数组foreach
               int [,]Matrix=new int[3,3]{{1,2,3},{4,5,6},{7,8,9}};
               int sum = 0;
               foreach (int nmuber in Matrix) {
                   sum += nmuber;
                   Console.WriteLine(nmuber);
               }
               Console.WriteLine("sum={0}", sum);
    
    //可变数组
                int[][] aArray = new int[2][]; int[][] aArray = new int[2][]{new int [3]{1,2,3},new int [4]{4,5,6,7}};
                aArray[0]=new int [3]{1,2,3};
                aArray[1] = new int[4] { 4, 5, 6 ,7};
                foreach (int  element in aArray[0])
                {
                    Console.Write(element);
                }
                foreach (int  element in aArray[1])
                {
                    Console.Write(element);
                }
    



    zy20
    1、理解函数的概念,并知道使用函数的好处。
    2、掌握如何定义和使用函数,并知道函数是如何运行的。
    3、掌握返回语句return的用法。

    static string Weekdata(int y, int m, int d) 
            { 
            if (m==1||m==2)
            {
                m += 12;
                y--;
              }
            int week = (d + 2 * m + 3 * (m + 1) / 5 + y + y / 4 - y / 100 + y / 400 + 1) % 7;
            string weekstring = "";
            switch (week)
            {
                case 0:
                    weekstring = "星期天";
                    break;
                case 1:
                    weekstring = "星期一";
                    break;
                case 2:
                    weekstring = "星期二";
                    break;
                case 3:
                    weekstring = "星期三";
                    break;
                case 4:
                    weekstring = "星期四";
                    break;
                case 5:
                    weekstring = "星期五";
                    break;
                case 6:
                    weekstring = "星期六";
                    break;
            }
            return weekstring; //返回结果
            }
    
    
            static void Main(string[] args)
            {
                string weekday = Weekdata(2013,10,29);
                Console.WriteLine(weekday);
            }
    
  • 相关阅读:
    为什么无法从外部访问VSTO对象?
    通过实例代码理解WPF的Dispatcher
    Silverlight打印解决方案2.0之如何自定义表体
    VSTO"无法加载自定义程序集"
    打开silverlight项目之前,您需要安装最新的Silverlight Developer运行时
    Android 3.2 联机测试adb驱动如何安装和配置?
    Android 3.2 应用程序联机(devices)测试失败提示INSTALL_FAILED_INSUFFICIENT_STORAGE
    Android sdk 3.0 sdk3.1 sdk3.2 平板开发环境安装日志
    android 蓝牙开发常见问题总结
    Pad本蓝牙模块检测
  • 原文地址:https://www.cnblogs.com/develop/p/3385313.html
Copyright © 2020-2023  润新知