函数

            函数
            定义:一个较大的程序一般分为若干个程序块,每一个模块用来实现一个特定的功能。
                  所有高级语言里都有子程序这个概念,用子程序实现模块功能。
                  在c#语言中,子程序的作用是由一个主函数和若干个函数构成
                  由函数调用其他函数,其他函数也可以相互调用,一个函数可以被一个函数或多个函数调用任意次
            作用:在程序设计中,常将一些常用的功能模块编写成函数,放在函数库中供公共选用。
                  要善于利用函数,以减少重复编写程序段的工作量

            函数的定义方法
            void    是没有返回值,括号内可以填写参数
            private  只能在当前类里应用
            public   可以在整个命名空间里使用

            函数的注释    在函数上面输入三个///

            函数一个是传值,一个是传值
            传值就是把实参的值传到所调用的函数中,实参的值并没有发生变化,默认的传值类型有
                int 类型,浮点类型,bool类型,char类型,结构体等
            传址就是将调用的函数里面的操作,实参的值也会跟着发生变化,传址的有数组和字符串string。

            数据分类 值类型和引用类型
            值类型就是传值的那种,引用类型包括字符串类型,数组,对象
            字符串类型特殊,字符串实际上是一个字符char[]数组,它在修改的时候并不是直接修改,而是
            新开辟一个新的字符串,所以它在调用赋值的时候相当于传值,所以它是引用类型
           

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

namespace 函数
{
    
    class Program
    {
        //没有返回值
        public void aa()
    {
            Console.WriteLine("Hello world!");
    }

        //没有返回值,没有参数
        public void leijia()
        {
            Console.Write("请输入一个整数:");
            int a = int.Parse(Console.ReadLine());
            int sum = 0;
            for (int i = 1; i <= a; i++)
            {
                sum += i;
            }
            Console.WriteLine(sum);

        }
        //没有返回值,有参数
        public void leijia(int z)
        {
            int sum = 0;
            for (int i = 1; i <= z; i++)
            {
                sum += i;
            }
            Console.WriteLine(sum);
        }


        //有返回值,并且有参数
        public int Leijia1(int z)
        {
            int sum = 0;
            for (int i = 1; i <= z; i++)
            {
                sum += i;
            }

           return sum;
        }
        //有返回值,没有参数
        public int leijia2()
        {

            Console.Write("请输入一个整数:");
            int a = int.Parse(Console.ReadLine());
            int sum = 0;
            for (int i = 1; i <= a;i++ )
            {
                sum += i;
            }

            return sum;
        }

        static void Main(string[] args)
        {
            //函数
            //一个较大的程序一般都分为若干个程序块,每一个模块用来实现一个特定功能
            //函数的作用就是减少重复编写程序段的工作量
            //Void是没有返回值的

            //初始化这个类,是为了调用这个类里面的函数
            Program hanshu = new Program();
            //hanshu.aa();
            //函数必须经过调用才能执行

            //累加求和
            

            //一 没有返回值,没有参数

            hanshu.leijia();

            //二 没有返回值,有参数
            //Console.Write("请输入一个整数:");
            //int a = int.Parse(Console.ReadLine());
            //hanshu.leijia(a);

            //三 有返回值,有参数,返回值需要接收才能使用
            //Console.Write("请输入一个整数:");
            //int a = int.Parse(Console.ReadLine());
            //int sum = hanshu.Leijia1(a);
            //Console.WriteLine(sum);

            //四 有返回值,没有有参数,返回值需要接收才能使用
            //int sum = hanshu.leijia2();
            //Console.WriteLine(sum);

            //返回值为0或者1,只适合进行判断,true或者false

            //传值只是把数值传递过去,并没有改变变量

            //out可以在一个函数中同时返回多个值,而return只能返回一个值
            //out 是需要被赋值的,仅仅是把变量的地址码传输过去,也就是仅仅把箱子过来
            //程序段完成后,要将此箱字连同已经赋值的箱子一起传输回去
            //传址就是把变量地址码传过去,



            Console.ReadLine();
        }
    }
}
原文地址:https://www.cnblogs.com/fengsantianya/p/5493664.html