C# 课堂练习实验题(持续更新)

2 篇文章 0 订阅

C# 课堂练习

这里放上选修课上学习C#老师给的作业答案,供以后参考,因为是应付作业所以有更好的算法也没有放上去,以后再说吧

打印100-200之间的所有素数

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

namespace 输出素数
{
    class Program
    {
        static void Main(string[] args)
        {

            for(int i=101; i <= 200; i++)
            {
                int p = 0;
               for (p = 2; p < i; p++)   //这里应该是利用二分之一的计算量应该更小
                {
                    if (i%p == 0)
                    {
                        break;
                    }
                    
                }
                if (i==p)   
                {
                    Console.WriteLine(i.ToString());
                }
            }
            Console.ReadKey();
        }
    }
}

随机生成100个两位正整数,并统计出其中小于等于40、大于40小于等于70以及大于70的数据个数。

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

namespace 统计数据
{
    class Program
    {
        /// <summary>
        /// 随机生成100个两位正整数,并统计出其中小于等于40、大于40小于等于70以及大于70的数据个数。
        /// </summary>
        /// <param name="args"></param>
        static void Main(string[] args)
        {
            Random rd = new Random();
            int temp;
            int xy_40=0; //统计小于40的数
            int fw40_70=0; //统计40~70的数
            int dy_70=0; //统计大于70的数
            for (int i =0; i < 100; i++)
            {
                temp = rd.Next(10, 99);
                if (temp < 40)
                {
                    xy_40++;
                }
                else if (temp>=40 && temp <= 70)
                {
                    fw40_70++;
                }
                else
                {
                    dy_70++;
                }
                Console.WriteLine(temp);
            }
            Console.WriteLine("小于40的个数为"+xy_40.ToString());
            Console.WriteLine("40~70的个数为"+fw40_70.ToString());
            Console.WriteLine("大于70的个数为"+dy_70.ToString());
            Console.ReadKey();
        }
    }
}

冒泡排序

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

namespace program18
{
    class Program18
    {
        static void Main(string[] args)
        {
            int[] arr = { 9, 8, 3, 5, 2 ,12,7,25,15};
            Console.Write("冒泡排序前:" + "".PadRight(5));
            PrintArray(arr); //打印数组元素
            SelectSort(arr); //调用排序方法
            Console.Write("冒泡排序后:");
            PrintArray(arr); //打印数组元素


            Console.ReadKey();
        }
        //定义打印数组的方法
        public static void PrintArray(int[] arr)
        {
            //循环遍历数组的元素
            for (int i = 0; i < arr.Length; i++)
            {
                Console.Write(arr[i] + " "); //打印元素和空格
            }
            Console.WriteLine();
        }
        //定义对数组排序的方法
        public static void BubbleSort(int[] arr)
        {
            //定义外层循环
            for (int i = 0; i < arr.Length - 1; i++)
            {
                //定义内层循环
                for (int j = 0; j < arr.Length - i - 1; j++)
                {
                    //Console.WriteLine(arr.Length - i);
                    if (arr[j] > arr[j + 1]) //比较相邻元素
                    {
                        //下面的三行代码用于交换两个元素
                        int temp = arr[j];
                        arr[j] = arr[j + 1];
                        arr[j + 1] = temp;
                    }
                }
                Console.Write("第" + (i + 1) + "轮排序后:");
                PrintArray(arr); //每轮比较结束打印数组元素
            }
        }

        //定义对数组排序的方法
        public static void SelectSort(int[] arr)
        {
            //定义外层循环
            for (int i = 0; i < arr.Length - 1; i++)
            {
                //定义内层循环
                for (int j = i + 1; j <= arr.Length - 1; j++)
                {
                    //Console.WriteLine(arr.Length - i);
                    if (arr[i] > arr[j ]) //比较相邻元素
                    {
                        //下面的三行代码用于交换两个元素
                        int temp = arr[i];
                        arr[i] = arr[j];
                        arr[j] = temp;
                    }
                }
                Console.Write("第" + (i + 1) + "轮排序后:");
                PrintArray(arr); //每轮比较结束打印数组元素
            }
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值