C#练习——用方法实现整数数组的最大值、字符串数组的最长字符串、平均值计算四舍五入保留两位小数

这篇博客通过C#代码展示了如何手动实现找到整数数组的最大值、字符串数组的最长字符串以及计算整型数组的平均值并四舍五入保留两位小数的方法。博客中提供了详细的代码示例,包括GetMax、GetLongestStr和GetAverage三个静态方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

namespace Review
{
    class Program
    {
        static void Main(string[] args)
        {

            #region  用方法来实现:有一个整数数组:{ 1, 3, 5, 7, 90, 2, 4, 6, 8, 10 },找出其中最大值,并输出。不能调用数组的Max()方法
            //int[] array = new int[] { 1, 3, 5, 7, 90, 2, 4, 6, 8, 10 };
            ////数组的Max()方法
            ////int max = array.Max();
            //int max = GetMax(array);
            //Console.WriteLine(max);
            //Console.ReadKey();
 
1. 声明两个变量:int n1 = 10, n2 = 20;要求将两个变量交换,最后输出n1为20,n2为10。扩展(*):不使用第三个变量如何交换? 2.方法实现:将上题封装一个方法来做,方法有两个参数分别为num1,num2,将num1与num2交换。提示:方法有两个参数n1,n2,在方法中将n1与n2进行交换,使用ref。(*) 3. 请用户输入一个字符串计算字符串中的字符个数,并输出。 4.方法实现计算两个数的最大值。思考:方法的参数?返回值?扩展(*):计算任意多个数间的最大值(提示:使用可变参数,params)。 5.方法实现计算1-100之间的所有整数的和。 6.方法实现计算1-100之间的所有奇数的和。 7.方法实现:判断一个给定的整数是否为“质数”。 8.方法实现计算1-100之间的所有质数(素数)的和。 9.方法实现:有一个整数数组:{ 1, 3, 5, 7, 90, 2, 4, 6, 8, 10 },找出其中最大值,并输出。不能调用数组的Max()方法。 10.方法实现:有一个字符串数组:{ "马龙", "迈克尔乔丹", "雷吉米勒", "蒂姆邓肯", "科比布莱恩特" },请输出最长字符串。 11.方法实现:请计算出一个整型数组平均值。{ 1, 3, 5, 7, 90, 2, 4, 6, 8, 10 }。要求:计算结果如果有小数,则显示小数点后两位四舍五入)。Math.Round() 12. 请通过冒泡排序法对整数数组{ 1, 3, 5, 7, 90, 2, 4, 6, 8, 10 }实现升序排序。 13. 有如下字符串:【"患者:“大夫,我咳嗽得很重。” 大夫:“你多大年记?” 患者:“七十五岁。” 大夫:“二十岁咳嗽吗”患者:“不咳嗽。” 大夫:“四十岁时咳嗽吗?” 患者:“也不咳嗽。” 大夫:“那现在不咳嗽,还要等到什么时咳嗽?”"】。需求:①请统计出该字符中“咳嗽”二字的出现次数,以及每次“咳嗽”出现的索引位置。②扩展(*):统计出每个字符的出现次数。 14.字符串" hello world,你 好 世界 ! "两端空格去掉,并且将其中的所有其他空格都替换成一个空格,输出结果为:"hello world,你 好 世界 !"。 15. 制作一个控制台小程序。要求:用户可以在控制台录入每个学生的姓名,当用户输入quit(不区分大小写)时,程序停止接受用户的输入,并且显示出用户输入的学生的个数,以及每个学生的姓名。效果如图:
<think>嗯,用户想要用C#实现输入10个整数并求最大值的代码示例。我需要先看看他们提供的引用内容,找到相关的例子。 引用1中的代码用了三个方法分别求最大值、最小值和平均值,其中GetMax方法遍历数组最大值。引用2里的方法则是在循环中同时比较最大值和最小值,初始值设置为int.MinValue和int.MaxValue。引用4则是分开输入,使用Split处理字符串数组,再转换成整数数组,然后调用max函数。 用户特别提到只需要求最大值,所以可能需要简化代码。引用2中的方法可能更高效,因为它在一个循环里同时处理最大和最小,但用户只需要最大值的话,可以只保留max部分。 需要注意的是,初始化max变量的时候应该设置为int.MinValue,这样任何输入的数都会比它大,从而正确更新最大值。比如引用2中的做法,初始max是int.MinValue,然后在每次输入时比较,这样即使输入的数值都是负数也能正确找到最大值。 另外,输入方式可能有多种,用户可能需要逐个输入或者一次性输入。引用4中使用Split处理空格分隔的输入,但用户的问题没有说明输入方式,可能需要提供两种方法。但用户的问题明确是输入10个整数,可能更倾向于逐个输入,如引用1和引用2的做法。 所以综合来看,应该提供一个控制台程序,循环读取10次输入,每次将数值存入数组,然后遍历数组最大值。或者像引用2那样在输入的同时进行比较,不需要存储数组,这样更节省内存。 不过用户可能需要存储数组,因为问题中提到“输入10个整数”,所以可能需要数组。比如引用1和引用4都用了数组存储。所以正确的做法是:定义数组,循环输入10次,然后遍历数组最大值。 但引用2中的方法在输入的同时更新max和min,这样不需要存储整个数组,效率更高。不过如果用户后续可能需要用到这些数值,存储数组更好。需要根据用户需求判断,但问题只提到求最大值,所以两种方法都可以。 最后,代码示例应该简洁明了,展示如何输入10个数并找到最大值。可能结合引用2和引用1的方法,使用数组存储,然后遍历求最大值。或者像引用2那样在输入时直接比较,更高效。这里选择更高效的方式,同时给出两种方式的说明,让用户可以根据需要选择。</think>根据您的需求,我为您整理两种C#实现输入10个整数最大值方法,并附上关键点说明: ### 方法一:数组存储后遍历(基础实现) ```csharp using System; class Program { static void Main() { int[] numbers = new int[10]; Console.WriteLine("请输入10个整数:"); // 输入数据 for (int i = 0; i < 10; i++) { numbers[i] = int.Parse(Console.ReadLine()); } // 查找最大值 int max = numbers[0]; foreach (int num in numbers) { if (num > max) { max = num; } } Console.WriteLine($"最大值为:{max}"); } } ``` ### 方法二:实时比较法(更高效) ```csharp using System; class Program { static void Main() { int max = int.MinValue; Console.WriteLine("请输入10个整数:"); for (int i = 0; i < 10; i++) { int input = int.Parse(Console.ReadLine()); if (input > max) { max = input; } } Console.WriteLine($"最大值为:{max}"); } } ``` **关键区别说明**: - 方法一先存储所有数值再遍历,适合需要重复使用数据的情况[^2] - 方法二在输入时实时比较,内存占用更少,效率更高[^4] - `int.MinValue`初始化确保能正确处理负数输入[^2] **输入示例**: ``` 请输入10个整数: 23 -5 78 0 42 ... ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值