C++(10.5)

B A C D A B C C A B

40 3715 358 1523 5 4 8 2 0 13

cs 复制代码
#include <stdio.h>

int main() {
    float scores[10];  // 存储10个学生成绩
    int i, max_idx = 0;  // max_idx记录最高分序号
    float max_score;

    // 输入成绩
    printf("请输入10个学生的成绩:\n");
    for (i = 0; i < 10; i++) {
        scanf("%f", &scores[i]);
    }

    // 初始化最高分
    max_score = scores[0];

    // 查找最高分及序号
    for (i = 1; i < 10; i++) {
        if (scores[i] > max_score) {
            max_score = scores[i];
            max_idx = i;
        }
    }

    // 输出结果(序号从1开始)
    printf("最高成绩为:%.1f,对应序号为:%d\n", max_score, max_idx + 1);
    return 0;
}
cs 复制代码
#include <stdio.h>

#define STUDENT 5  // 学生数
#define COURSE 4   // 课程数

int main() {
    float scores[STUDENT][COURSE];  // 成绩数组
    float stu_avg[STUDENT] = {0};   // 学生平均分
    float course_avg[COURSE] = {0}; // 课程平均分
    int i, j;

    // 输入成绩
    printf("请输入%d个学生的%d门课程成绩(按行输入):\n", STUDENT, COURSE);
    for (i = 0; i < STUDENT; i++) {
        for (j = 0; j < COURSE; j++) {
            scanf("%f", &scores[i][j]);
            course_avg[j] += scores[i][j];  // 累加课程总分
            stu_avg[i] += scores[i][j];     // 累加学生总分
        }
        stu_avg[i] /= COURSE;  // 计算学生平均分
    }

    // 计算课程平均分
    for (j = 0; j < COURSE; j++) {
        course_avg[j] /= STUDENT;
    }

    // 输出课程平均分
    printf("\n各门课程的平均成绩:\n");
    for (j = 0; j < COURSE; j++) {
        printf("课程%d:%.1f  ", j + 1, course_avg[j]);
    }
    printf("\n");

    // 按学生平均分从高到低排序(冒泡排序)
    for (i = 0; i < STUDENT - 1; i++) {
        for (j = 0; j < STUDENT - 1 - i; j++) {
            if (stu_avg[j] < stu_avg[j + 1]) {
                // 交换学生平均分
                float temp_avg = stu_avg[j];
                stu_avg[j] = stu_avg[j + 1];
                stu_avg[j + 1] = temp_avg;
                // 交换对应学生的所有成绩
                for (int k = 0; k < COURSE; k++) {
                    float temp_score = scores[j][k];
                    scores[j][k] = scores[j + 1][k];
                    scores[j + 1][k] = temp_score;
                }
            }
        }
    }

    // 输出排序后的学生成绩及平均分
    printf("\n按学生平均分排序(从高到低):\n");
    for (i = 0; i < STUDENT; i++) {
        printf("学生%d成绩:", i + 1);
        for (j = 0; j < COURSE; j++) {
            printf("%.1f ", scores[i][j]);
        }
        printf("平均:%.1f\n", stu_avg[i]);
    }

    return 0;
}
相关推荐
七颗糖很甜2 分钟前
基于 OpenCV 的 FY2 云顶图云块追踪算法实现
人工智能·opencv·算法
__Wedream__3 分钟前
NTIRE 2026 Challenge on Efficient Super-Resolution——冠军方案解读
人工智能·深度学习·算法·计算机视觉·超分辨率重建
煜bart4 分钟前
使用 TypeScript 实现算法处理
开发语言·前端·javascript
yong15858553435 分钟前
Linux C++ 中的 volatile变量在多线程环境下进行运算的问题
c语言·c++
♛识尔如昼♛5 分钟前
C 基础(7) - 字符输入/输出和输入验证
c语言·开发语言
FL16238631297 分钟前
基于深度学习mediape实现人员跌倒人体姿势跌倒检测算法源码+说明文件
人工智能·深度学习·算法
wangwangmoon_light8 分钟前
1.23 LeetCode总结(树)_一般树
算法·leetcode·职场和发展
小肝一下9 分钟前
c++从入门到跑路——string类
开发语言·c++·职场和发展·string类
被考核重击10 分钟前
基础算法学习
学习·算法
无巧不成书021812 分钟前
Unicode编码机制全解析:从核心原理到Java 实战
java·开发语言·java字符编码·unicode 15.1码点