zoukankan      html  css  js  c++  java
  • 习题8-10 输出学生成绩

    本题要求编写程序,根据输入学生的成绩,统计并输出学生的平均成绩、最高成绩和最低成绩。建议使用动态内存分配来实现。

    输入格式:

    输入第一行首先给出一个正整数N,表示学生的个数。接下来一行给出N个学生的成绩,数字间以空格分隔。

    输出格式:

    按照以下格式输出:

    average = 平均成绩
    max = 最高成绩
    min = 最低成绩
    
     

    结果均保留两位小数。

    输入样例:

    3
    85 90 95
    
     

    输出样例:

    average = 90.00
    max = 95.00
    min = 85.00

    本题没有什么难度,直接做就ok,它题目考察的是一个知识点,不是思路,所以很简单。
     1 #include<stdio.h>
     2 #include<stdlib.h>
     3 #include<string.h>
     4 #include<math.h>
     5 int main() {
     6     int n = 0;
     7     scanf("%d", &n);
     8     int max = 0, min = 100;                //此处min赋值100,因为如果赋值0,他就永远是最小的了,成绩最高100,所以赋值100
     9     double average = 0.0;
    10     int sum = 0;
    11     int* a = (int*)malloc(n * sizeof(int));
    12     for (int i = 0; i < n; i++) {
    13         scanf("%d", &a[i]);
    14         if (max < a[i]) {
    15             max = a[i];
    16         }
    17         if (min > a[i]) {
    18             min = a[i];
    19         }
    20         sum += a[i];
    21     }
    22 
    23     average = 1.0 * sum / n;
    24     printf("average = %.2lf
    ", average);
    25     printf("max = %d.00
    ", max);
    26     printf("min = %d.00", min);
    27     return 0;
    28     
    29 }
    这里我依然只用了一层循环,就直接输入以后就处理了,麻烦点的方法是,先读,再处理,那样很麻烦。
    这里我的max和min都是整型,只是在最后输出的时候加入了.00这样的“假”的小数。
    没什么说的啦!
  • 相关阅读:
    【模板】Splay Tree
    【题解】CF718C Sasha and Array
    【题解】SP2916 GSS5
    【题解】[ZJOI2013] K大数查询
    【游记】GDOI 2021游记+赛后总结
    【游记】CSP2020 J/S游记
    【知识点】Manacher算法详解
    Vue 父组件传值给子组件,子组件拿到值,在倒计时完成后再调用父组件进行接口跳转
    V-model 结合select类型
    双向绑定和radio结合使用
  • 原文地址:https://www.cnblogs.com/KeithTee/p/13835860.html
Copyright © 2011-2022 走看看