用C#编写,定义一个元素个数不确定的数组,对数组进行排序,并求数组中的最大值和最小值。求助

 我来答
reakylee
2011-09-16 · TA获得超过2104个赞
知道小有建树答主
回答量:719
采纳率:100%
帮助的人:709万
展开全部
private void button2_Click(object sender, EventArgs e)
{
// 动态数组用 arraylist 及它自己的方法实现排序
ArrayList arr = new ArrayList();
arr.Add(100);
arr.Add(20);
arr.Add(60);
arr.Add(40);
arr.Add(90);
arr.Add(77);
arr.Add(11);
arr.Sort();
label1.Text = "";
foreach (var y in arr)
{
label1.Text += y.ToString() + ",";
}
label1.Text += "min is " + arr[0].ToString();
label1.Text += "max is " + arr[arr.Count - 1].ToString();
//静态数组,用Lambda表达式+Linq实现排序
int[] arr2 = new int[7];
arr2[0] = 100;
arr2[1] = 20;
arr2[2] = 60;
arr2[3] = 40;
arr2[4] = 90;
arr2[5] = 77;
arr2[6] = 11;
var od = from w in arr2 orderby w select w;
label2.Text = "";
foreach (int x in od)
{
label2.Text += x.ToString() + ",";
}
label2.Text +="min is "+ od.First().ToString();
label2.Text +="max is "+ od.Last().ToString();
}
两种方法都可以实现,你自己试试吧
手机用户33099
2011-09-16 · TA获得超过486个赞
知道小有建树答主
回答量:705
采纳率:0%
帮助的人:415万
展开全部
#include<stdio.h>
int main()
{
int a[7]=,k[10];
int m,i,j=0,h=0;
scanf("%d",&m);
for(i=0;i<7;i++)
{
if(a[i]<=m&&a[i+1]>=m&&h==0)
else k[j++]=a[i];
}
for(i=0;i<j;i++)
printf("%d ",k[i]);
return 0;
}
如果原顺序是从大到小,或是有小到大不确定呢????有应怎么编写呢????
如果是考试,OR 测试题,出现这种情况的机率为0,因为它会给出一个已知数组来判断是按升还是降来排序!
如int a[7]=,本程序是按升排序!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友475f2bb
2011-09-16 · 超过19用户采纳过TA的回答
知道答主
回答量:60
采纳率:0%
帮助的人:33.7万
展开全部
用封装好的List<T>,ArrayList就可以。代码自己研究下,有好处
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式