C语言编程题目——实现排序

详细代码

编写函数 void sort(int *p,int n),功能:对 p 开始的 n 个数从大到小排
序。

挑战最短代码:

#include <bits/stdc++.h>
using namespace std;
int main()
{
    int st[100],number;
    cin>>number;
    for(int i=0;i<=number;i++)
        cin>>st[i];
    sort(st,st+number);
    for(int i=0;i<=number;i++)
        cout<<st[i];
}

短吗?再来个长点的!

#include <iostream>
using namespace std;
int cs;
void swap(int& a,int& b)
{
    int Temp=a;
    a=b;
    b=Temp;
}
void sort(int& a[],int b)
{
    if(a[cs]>a[cs-1])
        swap(a[cs],a[cs-1])
        if(cs>=0)
            return;
    cs--;
    sort(a[i],b)
}
int main()
{
    int st[100],number;
    cin>>number;
    cs=number;
    for(int i=0;i<=number;i++)
        cin>>st[i];
    sort(st,number);
    for(int i=0;i<=number;i++)
        cout<<st[i]<<endl;
}
void sort(int *p,int n)
{
for (int i = 0; i < n - 1; i++)
{
for (int j = 0; j < n - i - 1; j++)
{
if (p[j] < p[j + 1])
{
int t = p[j];
p[j] = p[j + 1];
p[j + 1] = t;
}
}
}
}