编程输入N个数据,存入数组,对数组按照从小到大的顺序进行排序

一维数组
VC++6.0运行环境下
刚学C语言,各位大神答案太高深我看不懂啊

第1个回答  2011-12-26
我写一个简单的
#include <iostream>
using namespace std;
void sort(int a[], int n)
{
int temp;
for(int i = 0; i < n; i++)
for(int j = i + 1; j < n; j++)
{
if(a[i] > a[j])
{
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
for(i = 0; i < n; i++)
cout<<a[i]<<" ";

}
int main()
{
int n;
int *p;
cout<<"输入N值的大小:"<<endl;
cin>>n;
p = new int[n];
//或 p = (int*)malloc(sizeof(int)*n);
cout<<"输入数组内容"<<endl;
for(int i = 0; i < n; i++)
{
cin>>p[i];
}
sort(p, n);
delete[] p; //与删除new分配的空间
return 0;
}本回答被提问者采纳
第2个回答  2011-12-26
using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication99
{
class A
{
public void Order(int[] a)
{
int count=a.Length;
for (int i = 0; i < count - 1; i++)
{
for (int j = i+1; j < count ; j++) //从小到大排列
{
if (a[j]< a[i])
{
int min = a[j];
a[j] = a[i];
a[i] = min;
}
}
}
for (int i = 0; i < a.Length; i++)
{
Console.WriteLine(a[i]);
}
}
}

class Program
{
static void Main(string[] args)
{
int[] a ={ 21, 23, 34, 54, 34, 64, 45, 63, 45 };
A aa = new A();
aa.Order(a);
Console.Read();
}
}
}
这个是控制台的程序,不过其中的逻辑做个参考吧!
第3个回答  2011-12-26
int []a = {7,5,6,4,3};
for(int j=0;j<a.length-1;j++){
for(int k = j+1;k<a.length;k++){
if(a[k]<a[j]){
int b = a[j];
a[j]=a[k];
a[k]=b;
}
}
}
第4个回答  2011-12-26
建议你还是看看课本吧,排序的方法有选择排序法和冒泡排序法等很多种,你先把算法弄明白了代码就好懂了。