1 条题解

  • 0
    @ 2025-4-7 21:28:48

    C :

    #include<stdio.h>
    void sort(int a[],int x)
    {
    	int i,j,t;
    	for(i=0;i<x;i++)
    		for(j=i+1;j<x;j++)
    		{
    			if(a[j]>a[i])
    			{
    				t = a[i];
    				a[i]=a[j];
    				a[j]=t;			
    			}		
    		}
    }
    void main()
    {
    	int n,i,a[100];
    	scanf("%d",&n);
    	for(i=0;i<n;i++)
    		scanf("%d",&a[i]);		
    	sort(a,n);
    	for(i=0;i<n;i++)
    		printf("%d ",a[i]);	
    	printf("\n");
    }
    

    C++ :

    #include <stdio.h>
    int main() {
    	int a[100];
    	int i, n;
    	void sort(int x[], int n);
    	scanf("%d", &n);
    	for (i = 0;i < n;i++)
    		scanf("%d", &a[i]);
    	sort(a, n);
    	for (i = 0;i < n;i++)
    		printf("%d ", a[i]);
    	printf("\n");
    	return 0;
    }
    /* 选择排序过程 */
    void sort(int x[], int n) {
    	int i, j, k, t;
    	for (i = 0;i < n - 1;i++) {
    		/* 在剩余项中寻找最大的一项,并调换到第i位 */
    		k = i;
    		for (j = i + 1;j < n;j++)
    			if (x[j] > x[k]) k = j;
    		if (k != i) {
    			t = x[i]; x[i] = x[k]; x[k] = t;
    		}
    	}
    }
    
    

    Pascal :

    var
      a:array[1..100] of longint;
      i,j,t,n:longint;
    begin
      readln(n);
      for i:=1 to n do read(a[i]);
      readln;
      for i:=1 to n-1 do
        for j:=i+1 to n do
        if a[i]<a[j] then begin t:=a[i]; a[i]:=a[j]; a[j]:=t; end;
      for i:=1 to n-1 do write(a[i],' ');
      writeln(a[n],' ');
    end.
    
    
    

    Java :

    import java.util.*;
    
    public class Main{
    	public static void main (String[] args) {
    		Scanner in=new Scanner(System.in);
    		int n=in.nextInt();
    		int []a=new int[n];
    		for(int i=0;i<n;i++){
    			a[i]=in.nextInt();	
    		}
    		java.util.Arrays.sort(a);
    		for(int j=n-1;j>=0;j--){
    			System.out.print (a[j]+" ");
    		}
    		System.out.println ();
    	}
    }
    
    
    • 1

    信息

    ID
    1348
    时间
    1000ms
    内存
    32MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者