C#.NET

C#语言规范(小例子)

2018-11-18  本文已影响0人  DouDouZH

一、交换两个数字的值

1、普通交换
using System;

namespace day01
{
    internal class Program
    {
        public static void Main(string[] args)
        {
            //这是一个代码块
            #region 声明两个变量交换值

            int n1 = 10, n2 = 20;
            Console.WriteLine("交换前:");
            Console.WriteLine("n1="+n1);
            Console.WriteLine("n2="+n2);
            int tmp = n1;
            n1 = n2;
            n2 = tmp;
            Console.WriteLine("交换后:");
            Console.WriteLine("n1="+n1);
            Console.WriteLine("n2="+n2);
            //防止调试一闪而过
            Console.ReadKey();
            #endregion    
    }
}
运行结果
2、用方法执行交换

方法传值必须加ref 不加只是交换原来值的副本,值本身不会交换

using System;

namespace day01
{
    internal class Program
    {
        public static void Main(string[] args)
        {
            #region 用发放实现交换
            int n1 = 10, n2 = 20;
            Console.WriteLine("交换前:");
            Console.WriteLine("n1="+n1);
            Console.WriteLine("n2="+n2);
            Swap(ref n1,ref n2);
            Console.WriteLine("交换后:");
            Console.WriteLine("n1="+n1);
            Console.WriteLine("n2="+n2);

            #endregion
        }

        private static void Swap(ref int n1,ref int n2)
        {
            int tmp = n1;
            n1 = n2;
            n2 = tmp;
           
        }
    }
}
运行结果

二、计算字符串的长度

using System;

namespace day01
{
    internal class Program
    {
        public static void Main(string[] args)
        {
            #region 计算字符串的长度,字符的个数
            while (true)
            {
                Console.WriteLine("请输入一个字符串:");
                //输入字符串
                string msg = Console.ReadLine();
                Console.WriteLine("字符串的长度为:" + msg.Length);
            }
            #endregion
        } 
    }
}
运行结果

三、计算最大值

1、计算两个数的最大值
using System;

namespace day01
{
    internal class Program
    {
        public static void Main(string[] args)
        {
            #region 计算连个数的最大值
            Console.WriteLine("请输入两个值:");
            //输入值并转换成整数
            int num1 = int.Parse(Console.ReadLine());
            int num2 = int.Parse(Console.ReadLine());
            int max = Max(num1, num2);
            Console.WriteLine("最大值是"+max);

            #endregion
        } 
        
        //计算值
        private static int Max(int n1,int n2)
        {
            //三目表达式返回最大值
            return n1>n2?n1:n2;
        }
    }
}
运行结果
2、多个输的最大值
using System;
using System.Collections.Generic;

namespace day01
{
    internal class Program
    {
        public static void Main(string[] args)
        {
            #region 计算连个数的最大值
            Console.WriteLine("你要判断几个数的最大值:");
            int count = int.Parse(Console.ReadLine());
            Console.WriteLine("请输入值:");
            //输入值并转换成整数
            List<int> num =new List<int>();
            for (int i = 0; i < count; i++)
            {
                num.Add(int.Parse(Console.ReadLine()));
            }
            int max = Max(num);
            Console.WriteLine("最大值是"+max);

            #endregion
        } 
        
        //计算值最大值  
        private static int Max(List<int> pms)
        {
            int max = pms[0];
            for (int i = 0; i < pms.Count; i++)
            {
                if (pms[i]>max)
                {
                    max = pms[i];
                }
            }
            return max;
        }
    }
}
运行结果

四、计算1--100之间的和

1、1-100之间所有和
using System;

namespace day01
{
    internal class Program
    {
        public static void Main(string[] args)
        {
            #region 用方法实现计算1-100之间的和 
            Console.WriteLine(Sum());

            #endregion
        } 
        
        //计算和
        static int Sum()
        {
            int sum = 0;
            for (int i = 1; i <= 100; i++)
            {
                sum += i;
            }
            return sum;
        }
    }
}
运行结果
2、1-100之间所有奇数和
using System;

namespace day01
{
    internal class Program
    {
        public static void Main(string[] args)
        {
            #region 用方法实现计算1-100奇数的和 
            Console.WriteLine(OddSum());

            #endregion
        } 
        
        //计算奇数和和
        static int OddSum()
        {
            int sum = 0;
            for (int i = 1; i <= 100; i++)
            {
                if (i%2!=0)
                {
                    sum += i;
                }
            }
            return sum;
        }
    }
}
运行结果

五、找出最长字符串

数组的三种声明方式

int []arr=new int[10]
int []arr1=new int[] {1,2,3,4}
intt []err2={1,2,3,4}
using System;

namespace day01
{
    internal class Program
    {
        public static void Main(string[] args)
        {
            #region 用方法实现找出最长的字符串 

            string[] name = {"张三", "李思思", "王宝强","雷吉米勒"};
            string maxName = MaxName(name);
            Console.WriteLine("最长的字符串:"+maxName);

            #endregion
        } 
        
        //计算奇数和和
        static String MaxName(String [] name)
        {
            string maxName = name[0];
            for (int i = 1; i < name.Length; i++)
            {
                if (maxName.Length<name[i].Length)
                {
                    maxName = name[i];
                }
            }
            return maxName;
        }
    }
}
运行结果

六、计算数组的平均值

计算有小数,显示小数点后两位(四舍五入)Math.Round()

using System;

namespace day01
{
    internal class Program
    {
        public static void Main(string[] args)
        {
            #region 计算数组的平均值 计算有小数,显示小数点后两位(四舍五入)Math.Round() 

            int[] arr = {1, 2, 3, 4, 5, 6,1,11};
            
            Console.WriteLine("平均数是:"+Avg(arr));
            //Console.ReadKey();

            #endregion
        } 
        
        //计算数组平均数
        public static double Avg(int[] arr)
        {
            int sum = 0;
            for (int i = 0; i < arr.Length; i++)
            {
                sum += arr[i];
            }
            
            return Math.Round(sum/(double)arr.Length,2);
        }
    }
}
运行结果

七、冒泡排序给数组排序

using System;
using System.Runtime.InteropServices;

namespace day01
{
    internal class Program
    {
        public static void Main(string[] args)
        {
            #region 冒泡排序降序排列

            int[] arr = {1, 2, 3, 4, 5, 6,11};

            int[] arr1 = maopao(arr);
            for (int i = 0; i <arr.Length; i++)
            {
                Console.WriteLine(arr[i]);
            }

            //Console.ReadKey();

            #endregion
        } 
        
        //冒泡排序
        public static int[] maopao(int[] arr)
        {
            int sum = 0;
            for (int i = 0; i < arr.Length-1; i++)
            {
                for (int j = 0; j < arr.Length-1; j++)
                {
                    if (arr[j+1]>arr[j])
                    {
                        int tmp = arr[j];
                        arr[j] = arr[j + 1];
                        arr[j + 1] = tmp;
                    }
                }
            }
            
            return arr;
        }
    }
}
运行结果

八、统计字符串出现的次数和索引位置

1、统计单个字符串出现的次数
using System;
using System.Runtime.InteropServices;

namespace day01
{
    internal class Program
    {
        public static void Main(string[] args)
        {
            #region 统计“咳嗽“出现的次数和索引

            string str = "我咳嗽了,咳嗽很严重,每天晚上都咳嗽好多次";
            //IndexOf()搜索字符串换中字符的第一个出现的位置,找不到就显示-1
            //第一个参数是字符串  第二个是从第几个索引开始 
            int count = 0;
            int index = 0;
            while ((index=str.IndexOf("咳嗽",index))!=-1)
            {
                count++;
                Console.WriteLine("第一次出现“咳嗽”的馊味为:{0}",index);
                index += "咳嗽".Length;
            }
            Console.WriteLine("“咳嗽“总共出现了{0}次",count);
            //Console.ReadKey();

            #endregion
        }  
    }
}
运行结果
2、统计单个字符出现的次数

Dictionary<char,int>集合

using System;
using System.Collections.Generic;
using System.Runtime.InteropServices;

namespace day01
{
    internal class Program
    {
        public static void Main(string[] args)
        {
            #region 统计“咳嗽“出现的次数和索引

            string str = "我咳嗽了,咳嗽很严重,每天晚上都咳嗽好多次";
            //集合
            Dictionary<char,int> dict=new Dictionary<char, int>();
            for (int i = 0; i < str.Length; i++)
            {
                //判断集合中是否有这个字符
                if (!dict.ContainsKey(str[i]))
                {
                    //没有就是加入
                    dict.Add(str[i],1); 
                }
                else
                {
                    //有就给个数加1
                    dict[str[i]]++;
                }
            }
            //遍历集合
            foreach (KeyValuePair<char,int> item in dict)
            {
                Console.WriteLine("字符“{0}”出现了{1}次",item.Key,item.Value);
            }
            //Console.ReadKey();

            #endregion
        }  
    }
}
运行结果

九、去掉字符串之间的空格

using System;
using System.Collections.Generic;
using System.Net.Configuration;
using System.Runtime.InteropServices;

namespace day01
{
    internal class Program
    {
        public static void Main(string[] args)
        {
            #region 统计“咳嗽“出现的次数和索引

            string str = " I love you ";
            //去掉前面和后面的空格
            string msg = str.Trim();
            Console.WriteLine(msg);
            //字符串分割
            // 第二个参数去掉空实体    这样第一个参数必须是数组
            string [] msg1=str.Split(new char[]{' '},StringSplitOptions.RemoveEmptyEntries);
            //在吧所有的用一个空格连接起来
            String msg2=string.Join(" ",msg1);
            Console.WriteLine(msg);
            //Console.ReadKey();
         
            #endregion
        }  
    }
}
运行结果

十、学生信息小案例

using System;
using System.Collections.Generic;
using System.Linq;

namespace day01
{
    internal class Program
    {
        public static void Main(string[] args)
        {
            #region 学生信息小案例

            List<string> list =new List<string>();
            string name;
            int count = 0;
            do
            {
               Console.WriteLine("请输入学生姓名:");
                name = Console.ReadLine();
                if (name.IndexOf('王')==0)
                {
                    count++;
                }
                list.Add(name);
            } while (name.ToLower()!="quit");
            list.RemoveAt(list.Count-1);
            Console.WriteLine("共输入学生个数:{0}",list.Count());
            Console.WriteLine("分别是:");
            for (int i = 0; i < list.Count; i++)
            {
                Console.WriteLine(list[i]);
            }
            Console.WriteLine("姓王的人数:{0}",count);
            //Console.ReadKey();
         
            #endregion
        }  
    }
}
运行结果
上一篇下一篇

猜你喜欢

热点阅读