C# 函数

1.函数写在class与主函数之间,在主函数中调用

2.在程序设计中,常将一些常用的功能模块编写成函数,放在函数库中供公共选用。要善于利用函数,以减少重复编写程序段的工作量。

3.void是没有返回值括号内是参数(有参数时)private只能在当前类里面使用,public是公共的,可以在整个命名空间使用。 有何无相对于主函数来说的;return+需要返回的值

4.Public void leijia(int a){}   

5.公共函数  没有返回值(返回值的类型int/double) 函数名称  参数的类型及名称。

6.调用函数时必须初始化;

函数格式

  1 using System;
  2 using System.Collections.Generic;
  3 using System.Text;
  4 
  5 namespace 函数
  6 {
  7     class Program
  8     {
  9         public void First()
 10         {
 11             Console.WriteLine("这是我第一个函数里面的第一句话。"); 
 12         }
 13 
 14         //格式1:没有参数,没有返回值 (无参无返)
 15         /// <summary>
 16         /// 累加求和的方法,没有参数,没有返回值
 17         /// </summary>
 18         public void LeiJia()
 19         {
 20             //累加求和
 21             Console.Write("请输入一个正整数:");
 22             int a = int.Parse(Console.ReadLine());
 23             int sum = 0;
 24             for (int i = 1; i <= a; i++)
 25             {
 26                 sum += i;
 27             }
 28             Console.WriteLine("总和是" + sum);
 29         }
 30 
 31         //格式2:没有返回值,有参数(有参无返)
 32         /// <summary>
 33         /// 累加求和,需要一个int类型的参数,没返回值
 34         /// </summary>
 35         /// <param name="d"></param>
 36         public void LeiJia(int d)
 37         {
 38             int sum = 0;
 39             for (int i = 1; i <= d; i++)
 40             {
 41                 sum += i;
 42             }
 43             Console.WriteLine("总和是" + sum);
 44         }
 45 
 46 
 47         //格式3:有参数,有返回值(有参有返)
 48         /// <summary>
 49         /// 累加求和,需要参数,也有返回值
 50         /// </summary>
 51         /// <param name="d"></param>
 52         /// <returns></returns>
 53         public int Leijia1(int d)
 54         {
 55             int sum = 0;
 56             for (int i = 1; i <= d; i++)
 57             {
 58                 sum += i;
 59             }
 60             return sum;
 61         }
 62 
 63         //格式4:没有参数,有返回值
 64         /// <summary>
 65         /// 累加求和,没有参数,但是有返回值(int)
 66         /// </summary>
 67         /// <returns></returns>
 68         public int Leijia2()
 69         {
 70             Console.Write("请输入一个正整数:");
 71             int a = int.Parse(Console.ReadLine());
 72             int sum = 0;
 73             for (int i = 1; i <= a;i++ )
 74             {
 75                 sum += i;
 76             }
 77             return sum;
 78         }
 79 
 80         //比较大小
 81         /// <summary>
 82         /// 格式3,有参有返
 83         /// 两个数比较大小返回较大的一个
 84         /// </summary>
 85         /// <param name="a"></param>
 86         /// <param name="b"></param>
 87         /// <returns></returns>
 88         public double Max(double a , double b)
 89         {
 90             if (a >= b)
 91             {
 92                 return a;
 93             }
 94             else
 95             {
 96                 return b;
 97             }
 98         }
 99 
100 
101         static void Main(string[] args)
102         {
103             
104             //实例化   初始化   这个类
105             Program hanshu = new Program();
106             //hanshu.First();
107             //格式1调用
108             //hanshu.LeiJia();
109 
110             //格式2调用
111             //Console.Write("请输入一个正整数:");
112             //int a = int.Parse(Console.ReadLine());---------等号左侧接收
113             //hanshu.LeiJia(a);
114 
115             //格式3调用
116             //Console.Write("请输入一个正整数:");
117             //int a = int.Parse(Console.ReadLine());
118             //int sum = hanshu.Leijia1(a);     ---------------等号左侧
119             //Console.WriteLine(sum);
120 
121             //格式4调用
122             //int sum =hanshu.Leijia2();       ----------------等号左侧
123             //Console.WriteLine(sum);
124 
125 
126             //比较大小
127             double a = 6;
128             double b = 7;
129             double c =4;
130             Console.WriteLine(hanshu.Max(hanshu.Max(a,b),c));
131 
132             //Random ran = new Random();
133             //int aa = ran.Next();
函数格式

例题:  数组写成函数:

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace _10._18
 8 {
 9         class Program
10     {
11         private int[] congxiaodaodapaixu(int[] strs)
12         {
13             for (int i = 0; i < strs.Length - 1; i++)
14             {
15                 for (int j = i + 1; j < strs.Length; j++)
16                 {
17                     if (strs[i] > strs[j])
18                     {
19                         int bian = strs[j];
20                         strs[j] = strs[i];
21                         strs[i] = bian;
22                     }
23                 }
24             }
25             return strs;
26         }
27         private int[] congdadaoxiaopaixu(int[] strs)
28         {
29             for (int i = 0; i < strs.Length - 1; i++)
30             {
31                 for (int j = i + 1; j < strs.Length; j++)
32                 {
33                     if (strs[i] < strs[j])
34                     {
35                         int bian = strs[j];
36                         strs[j] = strs[i];
37                         strs[i] = bian;
38                     }
39                 }
40             }
41             return strs;
42         }
43         static void Main(string[] args)
44         {
45             Program pr = new Program();
46             //输入每个人的年龄 排序
47             Console.Write("请输入总人数:");
48             int ci = int.Parse(Console.ReadLine());
49             int[] strs = new int[ci];
50 
51             for (int i = 0; i < strs.Length; i++)
52             {
53                 Console.Write("请输入第{0}个学生的年龄:", i + 1);
54                 strs[i] = int.Parse(Console.ReadLine());
55             }
56 
57             Console.WriteLine("从小到大");
58             strs = pr.congxiaodaodapaixu(strs);
59             for (int i = 0; i < strs.Length; i++)
60             {
61                 Console.Write(strs[i]);
62                 Console.WriteLine();
63             }
64             Console.WriteLine();
65             Console.WriteLine();
66             Console.WriteLine();
67             Console.WriteLine();
68             Console.WriteLine("从大到小");
69             strs = pr.congdadaoxiaopaixu(strs);
70             for (int i = 0; i < strs.Length; i++)
71             {
72                 Console.Write(strs[i]);
73                 Console.WriteLine();
74             }
75             Console.ReadLine();
76         }
77     }
78 
79 }
数组函数

例题:超市购物

 //去超市选择要购买的商品             //0.开始购买             //1.洗发水   15元             //2.牙刷      5元             //3.可口可乐 3元             //4.水杯      12元             //5.毛巾      6元             //6.结算

            //输入想要的物品编号,输入每种商品需要买几件

            //结算:需要列出来商品名称、单价、数量、             //总价以及所有物品总价,结账时间             //然后输入交给收银员的钱数             //不够,请继续交钱             //够,结算,找钱

////难点: if 嵌套  switch
            ////ConsoleWrite()语句在循环内部   
            ////多个一维数组共用一组索引号
            Console.WriteLine("0.开始购买");
            Console.WriteLine("1.洗 发 水      15元");
            Console.WriteLine("2.牙    刷      5元");
            Console.WriteLine("3.可口可乐      3元");
            Console.WriteLine("4.水    杯      12元");
            Console.WriteLine("5.毛    巾      6元");
            Console.WriteLine("6.结算");
            Console.Write("请按0键,开始购物:");
            double q = double.Parse(Console.ReadLine());
            int[] c = new int[5] { 0, 0, 0, 0, 0 };                //定义一个  0的  一维数组   初始值的考虑。
            if (q == 0)
            {

                for (; ; )
                {
                    Console.Write("输入商品编号a:");
                    int a = int.Parse(Console.ReadLine());        //  函数语句的位置可以随便放  只要符合规范                
                    if (a > 0 && a <= 6)
                    {
                        switch (a)
                        {
                            case 1:
                                Console.Write("要购买的商品是:洗 发 水 单价 15元");
                                Console.Write("洗 发 水,数量:");
                                int c1 = int.Parse(Console.ReadLine());
                                c[0] = c1;                                  //把前面相同位置的数  修改掉;
                                break;
                            case 2:
                                Console.Write("要购买的商品是:牙    刷 单价 5元");
                                Console.Write("牙    刷,数量:");
                                int c2 = int.Parse(Console.ReadLine());
                                c[1] = c2;
                                break;
                            case 3:
                                Console.Write("要购买的商品是:可口可乐 单价 3元");
                                Console.Write("可口可乐,数量:");
                                int c3 = int.Parse(Console.ReadLine());
                                c[2] = c3;
                                break;
                            case 4:
                                Console.Write("要购买的商品是:水    杯 单价 12元");

                                Console.Write("水    杯,数量:");
                                int c4 = int.Parse(Console.ReadLine());
                                c[3] = c4;
                                break;
                            case 5:
                                Console.Write("要购买的商品是:毛    巾 单价 6元");
                                Console.Write("毛    巾,数量:");
                                int c5 = int.Parse(Console.ReadLine());
                                c[4] = c5;
                                break;
                        }


                        if (a == 6)
                        {

                            break;
                        }
                    }
                    else
                    {
                        Console.WriteLine("输入错误!");
                    }
                }

                Console.Write("点击回车键结账");
                Console.ReadLine();
                double m = c[0] * 15 + c[1] * 5 + c[2] * 3 + c[3] * 12 + c[4] * 6;
                Console.WriteLine("应付金额:" + m);
                Console.WriteLine("交付金额:");
                double y = double.Parse(Console.ReadLine());
                Console.WriteLine("找零:");
                double t = y - m;
                if (t >= 0)
                {
                    double[] d = new double[5] { 15, 5, 3, 12, 6 };//单价  一维数组
                    string[] e = new string[5] { "洗 发 水", "牙    刷", "可口可乐", "水    杯", "毛    巾" };//货物种类 一维数组
                    double sum = 0;
                    for (int i = 0; i < 5; i++)
                    {
                        if (c[i] != 0)
                        {
                            sum += c[i] * d[i];
                            Console.WriteLine("购买{0},数量:{1};单价{2} 元", e[i], c[i], d[i]);
                        }
                    }
                    Console.WriteLine("您此次的购物金额是{0},支付金额{1};找零{2}元", sum, y, t);
                    DateTime dt = DateTime.Now;
                    Console.WriteLine(dt);
                }
                else
                {
                    Console.WriteLine("金额不足,缺少金额:{0}元。" + Math.Abs(t));
                }
            }
            else
            {
                Console.Write("输入错误:");
            }
超市购物方法1

 

 

 

posted @ 2016-10-19 09:02  get("新技能")  阅读(1605)  评论(0编辑  收藏  举报