C#中如何定义一个一维数组(4个数),为其赋值(值从键盘上输入)并求出最大值

 我来答
lanslot_frog
2015-11-02 · 超过31用户采纳过TA的回答
知道答主
回答量:98
采纳率:0%
帮助的人:58.6万
展开全部
int[] nums = new int[4];

for(int i = 0 ; i < nums.Length ; i ++){
if(!(int.TryParse(Console.ReadLine(), out nums[i]))){
Console.WriteLine("Error");

i--;

}

}

然后这样:
int max(int a,int b){
return a > b ? a : b;
}
max(nums[0], max(nums[1], max(nums[2], nums[3])));
得出来的就是最大值。
或者
int[] nums = new int[]{1,3,2,4}
int max = nums[0]
foreach(int num in nums){
max = num > max ? num : max;
}

其实两种都是一个做法,比较两个数,得出最大数,再与其它的比较,依次比较下去,最后得出的数就是最大的书了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友879a5f212
2010-03-23 · TA获得超过185个赞
知道答主
回答量:196
采纳率:0%
帮助的人:72.7万
展开全部
这个要用read读取
复制的时候要a[0];a[1];a[2],用循环最好
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
绯雨晨
2010-03-23 · TA获得超过141个赞
知道小有建树答主
回答量:144
采纳率:0%
帮助的人:120万
展开全部
using System.Text.RegularExpressions;

static void Main(string[] args)
{
int max = 0;
int[] numbers = new int[4];
for (int i = 0; i < 4; i++)
{
string str = Console.ReadLine();
while (!IsNum(str))
{
Console.WriteLine("非数字,请重新输入。");
str= Console.ReadLine();
}
numbers[i] = Convert.ToInt32(str);
}
foreach (int i in numbers)
{
max = i > max ? i : max;
}
Console.WriteLine("最大数是:{0}", max);
Console.WriteLine("按任意键退出!");
Console.ReadLine();
}

public static bool IsNum(string s)
{
return Regex.IsMatch(s, @"^\d+");
}
}
手动修改,未测试.....
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
?>

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式