C# 第二章作业题

C# 所有作业和实验报告:https://blog.csdn.net/COCO56/article/details/102803267

3_2 要求用户输入10个整数,并输出其中最大的数和最小的数

在这里插入图片描述

using System;

namespace _3_2
{
	class Program
	{
		static void Main(string[] args)
		{
			int[] myArray = new int[10];

			Console.WriteLine("请输入十个数");
			for (int i = 0; i < 10; i++)
			{
				myArray[i] = Convert.ToInt32(Console.ReadLine());
			}
			Array.Sort(myArray);
			Console.WriteLine("最大的数为" + myArray[9].ToString());
			Console.WriteLine("最小的数为" + myArray[0].ToString());
			Console.ReadKey();
		}
	}
}
请输入十个数
5
6
8
7
9
0
1
3
2
4
最大的数为9
最小的数为0

3_4 接受用户输入的一个1~12之间的整数,利用switch语句输出对应月份的天数

在这里插入图片描述

using System;

namespace _3_2
{
	class Program
	{
		static void Main(string[] args)
		{
			int m;
			while (true)
			{
				Console.WriteLine("请输入月份:");
				m = Convert.ToInt32(Console.ReadLine());
				if (0<m && m<13){ break; }
				Console.WriteLine("您输入的月份有误,请重新输入。");
			}
			switch (m)
			{
				case 1: Console.WriteLine("31"); break;
				case 2: Console.WriteLine("28"); break;
				case 3: Console.WriteLine("31"); break;
				case 4: Console.WriteLine("30"); break;
				case 5: Console.WriteLine("31"); break;
				case 6: Console.WriteLine("30"); break;
				case 7: Console.WriteLine("31"); break;
				case 8: Console.WriteLine("31"); break;
				case 9: Console.WriteLine("30"); break;
				case 10: Console.WriteLine("31"); break;
				case 11: Console.WriteLine("30"); break;
				case 12: Console.WriteLine("31"); break;
			}

			Console.WriteLine("\nPress any key to quit.");
			Console.ReadKey();
		}
	}
}

3_7 编程求一个整数数组的最大值、最小值、平均值和所有数组元素的和

在这里插入图片描述

using System;
using System.Linq;

namespace _3_2
{
	class Program
	{
		static void Main(string[] args)
		{
			int[] a = new int[5] { 1, 2, 3, 4, 5 };
			Console.WriteLine("a.Max()=" + a.Max());
			Console.WriteLine("a.Min()=" + a.Min());
			Console.WriteLine("a.Average()=" + a.Average());
			Console.WriteLine("a.Sum()=" + a.Sum());

			Console.WriteLine("\nPress any key to quit.");
			Console.ReadKey();
		}
	}
}

3_8 求解“约瑟夫问题”

12个人排成一圈,从1号报数,凡是数到5的人就出队列,然后继续报数,试问最后一人出局的是谁。
在这里插入图片描述

using System;
using System.Collections.Generic;

namespace _3_2
{
	class Program
	{
		static void Main(string[] args)
		{
			Console.WriteLine("定义参与的人数: ");
			String peoples = Console.ReadLine();
			Console.WriteLine("定义规定的数字:");
			String numbers = Console.ReadLine();
			int nbs = Convert.ToInt32(numbers);
			Queue<int> pes = new Queue<int>();
			//最先入队的在对头(最先出队),最后入队的在队尾
			for (int i = 1; i <= Convert.ToInt32(peoples); i++) pes.Enqueue(i);

			Console.WriteLine("约瑟夫环开始了");
			int flag = 1;
			while (pes.Count >= 2)
			{ //留下最后一个
				if (flag == nbs)
				{
					//报到对应的数字,该人出队,且下个人从1开始报数
					Console.WriteLine("出队:" + pes.Dequeue());
					flag = 1;
				}
				else
				{
					pes.Enqueue(pes.Dequeue());
					flag++;
				}
			}

			Console.WriteLine("约瑟夫环结束,最后出队的是:" + pes.Dequeue());
			Console.WriteLine("\nPress any key to quit.");
			Console.ReadKey();
		}
	}
}
  • 6
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

COCO56(徐可可)

建议微信红包:xucoco56

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值