• 程序基础(二)


    此篇主要是在学习了程序基础后,编写的基础性综合小程序示例。

    示例1:写一个函数,功能是提示并获取用户输入的数,判断该数是奇数还是偶数。然后,在主函数中调用两次该函数。

    主函数:

    static void Main(string[] args)
            {
                Console.Write("请输入一个整数:");
                int input = int.Parse(Console.ReadLine());
                IsOdd(input);//函数调用
    Console.ReadLine();
    }

    判断奇偶性的函数:

    static void IsOdd(int n){           
               if (n > 0){
                   if (n % 2 == 0){
                       Console.Write("您输入的是偶数");
                   }
                   else{
                       Console.Write("您输入的是奇数");
                   }
               }
               else{
                   Console.Write("输入错误!");
               }
           }

    示例2:

    public static void Main(string[] args){
        int n = 1;
        test();
        Console.WriteLine(n);
        Console.ReadLine();
    }    
    static void test(){
        int n = 0;
        n++;
        Console.WriteLine(n);
    }
    上面的代码运行后会输出什么?
    答案:1和1

    示例3:写一个函数遍历输出一个int数组中所有的内容

    //主函数中测试
    public static void Main(string[] args){
        //测试1
        int[] nums = { 3, 4, 6, 83, 2 };
        PrintArray(nums);
        //测试2
        PrintArray(new int[] { 34, 21, 2 });
        Console.ReadLine();
    }
    //遍历数组
    static void PrintArray(int[] nums){
        foreach (int item in nums){
            Console.Write(item + "	");
        }
        Console.WriteLine();
    }

    示例4:写一个函数,对一个int类型的数组进行升序排序 

    public static void Main(string[] args){
        int[] nums = { 3, 4, 5, 7, 2, -33, 444 };
        Sort(nums);
        Console.Write("排序后:");
        foreach (int item in nums){
            Console.Write(item + "	");
        }
        Console.ReadLine();
    }
    //排序函数
    static void Sort(int[] nums){
        for (int i = 0; i < nums.Length - 1; i++){
            //在 i-(nums.Length-1) 范围内,将该范围内最小的数字提到i
            for (int j = i + 1; j < nums.Length; j++){
                if (nums[i] > nums[j]){
                    //交换
                    int temp = nums[i];
                    nums[i] = nums[j];
                    nums[j] = temp;
                }
            }
        }
    }

      示例5:写一个函数,对一个数组求和,得到求和结果,然后在主函数中,测试该函数,输出求和的结果

    public static void Main(string[] args){
        int[] nums = { 3, 4, 5, 7, 2, -33, 444 };
        Console.WriteLine("数组中的所有项之和为:" + GetSum(nums));
        Console.ReadLine();
    }
    static int GetSum(int[] nums){
        int sum = 0;
        foreach (var item in nums){
            sum += item;
        }
        return sum;//返回值为int类型
    }

    示例6:编写函数,判断一个数是不是质数;然后在主函数中做以下功能:

      1.输出一个数组中所有的素数

      2.求一个数组中的所有素数之和 

    public static void Main(string[] args){
        int[] nums = { 3, 4, 5, 7, 2, -33, 444 };
        //1.输出一个数组中所有的素数
        foreach (int item in nums){
            if (IsPrime(item)){
                Console.Write(item + "	");
            }
        }
        Console.WriteLine();
        //2.求一个数组中的所有素数之和
        int sum = 0;
        foreach (int item in nums){
            if (IsPrime(item)){//通过调用判断质数的函数实现条件判断
                sum += item;
            }
        }
        Console.WriteLine("素数之和为:" + sum);
        Console.ReadLine();
    }
    //判断质数的函数
    static bool IsPrime(int n){
            if (n < 2){
                return false;
            }
            for (int i = 2; i < n; i++){
                if (n % i == 0)
                {
                    return false;//不是质数返回false
                }
            }
            return true;
    }

     示例7:一个数n的阶乘,记作:n!,它等于1*2*3*...*n;也可以理解为n的阶乘等于n乘以n-1的阶乘:n!=n*(n-1)!;尝试利用递归的思想,完成一个函数,该函数用于求某个数的阶乘。

    /// <summary>
    /// 求n的阶乘
    /// </summary>
    /// <param name="n"></param>
    /// <returns></returns>
    static int GetFactorial(int n)
    {
        if (n == 1)
        {
            return 1;
        }
        else
        {
            return n * GetFactorial(n - 1);//调用函数自身实现阶乘运算
        }
    }
  • 相关阅读:
    Google哲学(一)
    Predictably Irractional 相对论的真相
    .NET使用OpenSSL生成的pem密钥文件【做电子商务的朋友可能需要】
    从开辟蓝海到保卫蓝海(一)
    礼让?
    登门槛策略
    从开辟蓝海到保卫蓝海(四)
    盛大招聘 高级数据库开发工程师 工作地点张江高科 学历高者,经验可放宽
    Show一下拿的奖杯
    我们家的一坨和田仔玉[三色皮]
  • 原文地址:https://www.cnblogs.com/wgl0126/p/7399021.html
Copyright © 2020-2023  润新知