1 条题解

  • 0
    @ 2025-4-14 18:43:48

    C :

    #include <stdio.h>
    int main(void){ int array[10], *x = 0, *y = 0, *z = 0, i = 0, j = 0, max = 0, min = 65536;
     x = (int*)array; for(i = 0; i< 10; i++) {  scanf("%d", &j);  j = j>0?j:-j;   if (max < j) {   max = j;   y = x + i;  }
    if (min > j) {    min = j;   z = x + i;  }  x[i] = j; } j = *z; *z = *x; *x = j;  x += 9; j = *y; *y = *x; *x = j; 
    for(i = 0; i < 10; i++) printf("%d ", array[i]); return 0;}
    

    C++ :

    #include <bits/stdc++.h>
    using namespace std;
    int a[10];
    int input(int *a){
    	for(int i=0;i<10;i++) cin>>*a++;
    }
    void solve(int *a){
    	int Min=100000000,Max=0;
    	for(int i=0;i<10;i++){
    		Min=min(a[i],Min);
    		Max=max(a[i],Max);
    	}
    	for(int i=0;i<10;i++){
    		if(a[i]==Min) swap(a[i],a[0]);
    		if(a[i]==Max) swap(a[i],a[9]);
    	}
    	for(int i=0;i<10;i++) cout<<*a++<<endl;
    }
    int main(){ 
    	input(a);
    	solve(a);
    return 0;
    }
    

    Pascal :

    var i,x,d,t:longint;
        a:array[1..10] of longint;
    begin
      x:=1000;
      d:=0;
      for i:=1 to 10 do
      begin
        read(a[i]);
        if a[i]>d then
          d:=a[i];
        if a[i]<x then
          x:=a[i];
      end;
      for i:=1 to 10 do
      begin
        if a[i]=d then
        begin
          t:=a[i];
          a[i]:=a[10];
          a[10]:=t;
        end;
        if a[i]=x then
        begin
          t:=a[i];
          a[i]:=a[1];
          a[1]:=t;
        end;
      end;
      for i:=1 to 10 do
        writeln(a[i]);
    end.
    
    • 1

    信息

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