1 条题解

  • 0
    @ 2023-6-11 12:15:51

    C :

    #include <stdio.h>
    void main()
    {
    	int n;
    	scanf("%d",&n);
    	int i,a[n],sum=0,j;
    	for(i=0;i<n;i++){
    		scanf("%d",&a[i]);
    		sum+=a[i];
    	}
    	float avg=(float)sum/n;
    	for(i = 0;i < n - 1;i++){
      		int t = i;
    		for(j = i + 1;j < n;j++){
    			if(a[j] > a[t])
    				t = j;
    		}
    		if(t != i){
    			int temp = a[i];
    			a[i] = a[t];
    			a[t] = temp;
    		} 		
    	}
    	printf("%d\n%.2f\n",sum,avg);
    	for(i=0;i<n;i++){
    		printf("%d ",a[i]);
    	}
    }
    

    C++ :

    #include <iostream>
    #include <iomanip>
    #include <cmath>
    
    using namespace std;
    
    int main(){
    	double n,t,s=0;
    	int i,j,c=0,a[20000];
    	cin>>n;
    	for(i=0;i<n;i++){
    		cin>>a[i];
    		s+=a[i];
    		c++;
    	}
    	cout<<s<<endl<<fixed<<setprecision(2)<<s/c<<endl;
    	for(i=1;i<=n-1;i++){
    		for(j=0;j<n-i;j++){
    			if(a[j]<a[j+1]){
    				t=a[j];
    				a[j]=a[j+1];
    				a[j+1]=t;
    			}
    		}
    	}
    	for(i=0;i<n;i++){
    		cout<<a[i]<<" ";
    	}
    }
    

    Python :

    # 接收输入n
    n = int(input())
    # 接收n个整数值转换成字符串列表m
    m = input().split()
    # 定义空列表l
    l = []
    # 定义总和su
    su = 0
    # 平均值
    avg = 0
    # 循环遍历字符串列表,把每个值转换成整型列表
    for v in m:
        l.append(int(v))
    #计算总和
    for i in range(0, n):
        su += l[i]
    #从大到小排序
    l.sort(reverse=True)
    #计算平均值
    avg = su / n
    #输出总和
    print(su)
    #输出平均值,保留两位小数
    print('%.2f' % avg)
    #从大到小遍历输出
    for i in range(0, n):
        print(l[i],end=' ')
    
    • 1

    信息

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