zoukankan      html  css  js  c++  java
  • 2023

    有n个学生m个课程

    求每个学生的平均分

    求每个课程的平均分

    求每个课程分数大于该课程平均分的人数

     

    #include <stdio.h>
    #include <math.h>
    
    int main()
    {
    	int m, n, i, j, count,sum;
    	while (scanf_s("%d%d", &n, &m))
    	{
    		count = sum = 0;
    		double defen, pdefen[50][5] = { { 0 } };
    		double p[50] = { 0 };
    		double q[5] = { 0 };
    		for (i = 0; i < n; i++)
    		{
    			for (j = 0; j < m; j++)
    			{
    				scanf_s("%lf",&defen);
    				pdefen[i][j] = defen;
    			}
    		}
    		for (i = 0; i < n; i++)
    		{
    			for (j = 0;j < m;j++)
    			{
    				p[i] += pdefen[i][j];
    			}
    			printf("%.2lf%c", p[i] / m, (i < n - 1 ? ' ' : '
    '));
    		}
    
    		for (j = 0; j < m; j++)
    		{
    			for (i = 0; i < n; i++)
    			{
    				q[j] += pdefen[i][j];
    			}
    			printf("%.2lf%c", q[j] / n, (j < m - 1? ' ' : '
    '));
    		}
    		for (i = 0; i < n; i++)
    		{
    			count = 0;
    			for (j = 0; j < m && pdefen[i][j] >= q[j]/n; j++)
    			{
    					count++;
    					if (count == m) sum++;
    			}
    		}
    		printf("%d
    ", sum);
    	}
    	return 0;
    }
    

      

    参考答案

    #include <stdio.h>
    #include <string.h>
    
    int main(void)
    {
        int n, m;
        int i, j;
        int t, d;
        int s[50];
        int c[5];
        int sc[50][5];
    
        while (scanf("%d%d", &n, &m) != EOF)
        {
            memset(s, 0, sizeof(s));
            memset(c, 0, sizeof(c));
            memset(sc, 0, sizeof(sc));
            for (i = 0 ; i < n ; i++)
            {
                for (j = 0 ; j < m ; j++)
                {
                    scanf("%d", &sc[i][j]);
                    c[j] += sc[i][j];
                    s[i] += sc[i][j];
                }
            }
            for (i = 0 ; i < n ; i++)
                printf("%.2lf%c", s[i] * 1.0 / m, i < n - 1 ? ' ' : ' 
    ');
            for (i = 0 ; i < m ; i++)
                printf("%.2lf%c", c[i] * 1.0 / n, i < m - 1 ? ' ' : ' 
    ');
            for (t = i = 0 ; i < n ; i++)
            {
                for (d = 1, j = 0 ; j < m ; j++)
                {
                    if (sc[i][j] < 1.0 * c[j] / n)
                    {
                        d = 0;
                        break;
                    }
                }
                if (d) t++;
            }
            printf("%d
    
    ", t);
        }
    
        return 0;
    }
    

      

    ========================if i have some wrong, please give me a message, thx.========================
  • 相关阅读:
    Nova中的系统状态分析
    nova Flavors
    NovaException: Unexpected vif_type=binding_failed
    nova Reboot (重启)
    nova Rescue 和 Unrescue
    nova shelve
    nova Evacuate
    ceilometer alarm 创建过程中的DB操作及优化
    Ceilometer 数据库比较
    network namespace连接的4种方法及性能
  • 原文地址:https://www.cnblogs.com/ailx10/p/5337605.html
Copyright © 2011-2022 走看看