zoukankan      html  css  js  c++  java
  • C# 8 函数 调用 常用类 时间 日期型

    函数:能够独立完成某个功能的模块。

    好处:1.结构更清析(编写、维护方便 )。2.代码重用。3.分工开发。

    四要素:名称,输入(参数),输出(返回的类型),加工(函数体)

    语法:

    返回类型 函数名(参数类型 参数名,....)

    {

    函数体

    }

    函数调用:

    [数据类型 变量名 = ]函数(参数);

    函数调用时:调用的参数和函数定义的参数保持一对待:个数,类型,对应。

    形参:形式参数。——函数定义的参数。

    实参:实际参数。——函数调用的参数。

    实参、形参传值的规律——传值,传址。

    传值:参于整型、浮点、boolchar这几种内建类型在函数传递参数的时候,默认都是传值。

    传值是把实参做一个副本(copy)传递给形参。

    m = 30;

    Add(m);

    static void Add(int a)

    {

        a += 20;

    }

    传址:默认情况下,数组就是传地址,字符串也是传地址。

    对于内建的整型、浮点、boolchar这些类型,如果要变成传址的话,需要在前面加ref

    m = 30;

    Add(ref m);

    static void Add(ref int a)

    {

        a += 20;

    }

    对于传值和传址大家要记住 :

    1.什么是传值,什么是传址?这个要分清楚。

    2.默认情况下,哪些类型是传值?哪些类型是传址?

    3.对于默认传值的类型,如何让他们变为传址?ref 

    以后为了防止因为传值,传址引起来的错误 ,建议大家采用返回值的形式,明确返回的数据

    递归——仅做了解。

    函数自己调自己。

            static void Main(string[] args)

            {

                Test(0);

            }

            static void Test(int a)

            {

    //if条件的return很重要,没有的话就永远出不来了。

                if(a >5)

                {

                    return;

                }

                a++;

                Console.WriteLine("正在做第"+a+"个梦");

                Test(a);

                Console.WriteLine(""+a+"个梦醒了");

            }

    常用的类:

    (一)数学类:Math

    1.Math.Ceiling(小数/整数):返回大于当前小数的最小整数。——天花板数

    2.Math.Floor(小数/整数):返回小于当前小数的最大整数。——地板数

    Console.WriteLine(Math.Ceiling(3.14));  //4

    Console.WriteLine(Math.Floor(3.14));   //3

    Console.WriteLine(Math.Ceiling(3.0));   //3

    3.Math.Pow(2,3)求指数。相当于23次方

    4.Math.Sqrt(16)开平方。

    5.四舍五入。

    Math.Round(3.63); //4  

    Math.Round(3.14); //3

    (二)日期时间:DateTime

    构造:DateTime dt = new DateTime([1990,2,5[,3,44,21]]);

    DateTime dt = new DateTime(); //?

    DateTime dt = new DateTime(1990, 2, 5);//?

    DateTime dt = new DateTime(1990, 2, 5, 3, 44, 25);//?

    当前时间:

    DateTime dt = DateTime.Now;

    日期时间对象的数据:

    Year,Month,Day,Hour,Minite,Second,MilliSecond

    DayOfWeek——星期几。DayOfYear——一年中的第几天。

    Date——取期日期部份。TimeOfDay——取期时间部份。

    日期时间对象的函数:

    AddYears(int num)

    AddMonths(int num)

    AddDays(int num)

    AddHours(int num)

    AddMinutes(int num)

    AddSeconds(int num)

    日期时间型数据可以直接相减,返回两个日期之间差的天数和时间。

    ToString(格式字符串)函数:把日按照某种格式显示出来。

    格式字符串:

    yyyy——四位数字的年份

    yy——两位数字的年份

    MM——两位数字的月分,不足两位添0

    M——1-2位数字的月份

    dd——两位数字的天,不足两位添0

    d——1-2位数字的天。

    hh——

    h——

    mm——

    m——

    ss——

    s——

    ms——毫秒。

    例如:

                DateTime dt = DateTime.Now;

                Console.WriteLine(dt.ToString("yyyyMMddhhmmss"));

    不止是日期时间型数据的ToString()函数中可以放格式化字符中。整数,小数的ToString()中也可以放格式化字符串。

    小数和整数类型的格式化符号主要是有四个。

    .——小数点

    ,——整数部份三位的分隔符

    #——任意位数字,有几位显示几位

    0——至少一位数字,不足则补0.

    例:

    #.00——必须保留两位小数。

    (三)字符串

    *Length:字符串的长度。

    ToLower():全都转成小写

    ToUpper():全都转成大写

    TrimStart()

    TrimEnd()

    Trim():压两头的空格。

    *StartsWidth("字符串")(bool)是否以括中的字符串开头,是--返回true

    *EndsWidth("字符串")(bool)是否以括号中的字符串结尾,是--返回true

    *Contains("字符串")(bool)是否包括括号中的字符串。是--返回true

    *IndexOf("子串")(int)返回子串在字符串中第一次出现的位置。

    *LastIndexOf("子串")(int)返回子串在字符串中最后一次出现的位置。

    以上两函数,如果在字符串中找不到相应的子串,返回-1

    *Substring(int start[,int length])(string)截取子串。

    Replace(string old,string new)(string)把字符串的old串换成new

    *Split('字符')(string[])按照括号中的字符把字符串拆开成数组中的元素。

    作业:

    1.从键盘输入一个正确的身份证号,获取其生日。

    2.从路径:C:UsersAdministratorDesktop1220104aaa.txt中,获取文件名。(用两种法做)

    3.用户从键盘上输入一个邮箱。验证是否正确。

    1

     class Program

        {

            static void Main(string[] args)

            {

                //Console.WriteLine("您刚才调用程序时,传进来的是"+args[0]);

                Console.Write("请输入三个数:");

                int x = Convert.ToInt32(Console.ReadLine());

                int y = Convert.ToInt32(Console.ReadLine());

                int z = Convert.ToInt32(Console.ReadLine());

                int zd = Max(x, y);

                zd = Max(zd, z);

            }

            static int Max(int a,int b)

            {

                if(a>b)

                {

                    return a;

                }

                else

                {

                    return b;

                }

            }

    }

    例2:

    class Class1

        {

            static void Main(string[] args)

            {

                int m = 30;

                Console.WriteLine("Main函数第一次打印:" + m); //30

                Add1( m);

                Console.WriteLine("Main函数第二次打印:" + m); //30

                Console.WriteLine("Main函数第三次打印:" + m); //30

                Add2(ref m);

                Console.WriteLine("Main函数第四次打印:" + m);//50

            }

            static void Add1( int a)

            {

                Console.WriteLine("Add1传值函数第一次打印:" + a); //30

                a += 20;

                Console.WriteLine("Add1传值函数第二次打印:" + a); //50

            }

            static void Add2(ref int a)

            {

                Console.WriteLine("Add2传址函数第一次打印:" + a); //30

                a += 20;

                Console.WriteLine("Add2传址函数第二次打印:" + a); //50

            }

        }

    例3:

    class Class3

        {

            static void Main(string[] args)

            {

                int m = 30;

                int n = Add(m);

                Console.WriteLine(m); //30

            }

            static int Add(int a)

            {

                a += 20;

                return a;

            }

        }

    例4:猴子吃桃

    class Class5

        {

            static void Mai6n(string[] args)

            {

                int m = TaoZi(1); //求第一天的桃子数

                Console.WriteLine(m);

            }

            

            /// <summary>

            /// 求每天的桃子数

            /// </summary>

            /// <param name="a">第几天</param>

            /// <returns>该天桃子数</returns>

            static int TaoZi(int a)

            {

                if(a == 7)

                {

                    return 1;

                }

                int n = (TaoZi(a + 1) + 1) * 2;

                return n;

            }

        }

  • 相关阅读:
    WBS概念
    Cognos 8体系结构:请求流程
    Cognos8.4安装配置指南
    Cognos 8体系结构:层级结构
    程序猿媛都偷偷深爱的九大习惯
    Cookie是存储在客户端上的一小段数据
    Web前端必须规避的8个误区
    WEB前端开发常用的优化技巧汇总
    微信小程序怎么开发(小程序开发文档)
    入门 IT 行业,该具备哪些技能?
  • 原文地址:https://www.cnblogs.com/981971554nb/p/4309769.html
Copyright © 2011-2022 走看看