c语言计算n个学生中的最高分
时间: 2024-05-15 21:13:43 浏览: 12
假设学生成绩保存在一个数组中,可以使用以下代码计算n个学生中的最高分:
```c
#include <stdio.h>
int main() {
int n, i;
float grades[100], max;
// 获取学生人数n
printf("请输入学生人数:");
scanf("%d", &n);
// 获取每个学生的成绩
for (i = 0; i < n; i++) {
printf("请输入第%d个学生的成绩:", i+1);
scanf("%f", &grades[i]);
}
// 计算最高分
max = grades[0];
for (i = 1; i < n; i++) {
if (grades[i] > max) {
max = grades[i];
}
}
// 输出最高分
printf("最高分为:%.2f\n", max);
return 0;
}
```
在上面的代码中,首先获取学生人数n,然后通过循环获取每个学生的成绩,并将最高分保存在变量max中,最后输出max的值即可。
相关问题
c语言 计算学生平均成绩,计算各科成绩最高分
以下是计算学生平均成绩和各科成绩最高分的C语言代码示例:
```c
#include <stdio.h>
struct Student {
int id;
char name[50];
char className[50];
float mathScore;
float englishScore;
float computerScore;
};
int main() {
struct Student students[100];
int numStudents;
// 从用户输入获取学生信息
printf("请输入学生人数:");
scanf("%d", &numStudents);
for (int i = 0; i < numStudents; i++) {
printf("请输入第%d个学生的学号:", i + 1);
scanf("%d", &students[i].id);
printf("请输入第%d个学生的姓名:", i + 1);
scanf("%s", students[i].name);
printf("请输入第%d个学生的班级:", i + 1);
scanf("%s", students[i].className);
printf("请输入第%d个学生的数学成绩:", i + 1);
scanf("%f", &students[i].mathScore);
printf("请输入第%d个学生的英语成绩:", i + 1);
scanf("%f", &students[i].englishScore);
printf("请输入第%d个学生的计算机成绩:", i + 1);
scanf("%f", &students[i].computerScore);
}
// 计算每个学生的平均成绩
for (int i = 0; i < numStudents; i++) {
float averageScore = (students[i].mathScore + students[i].englishScore + students[i].computerScore) / 3;
printf("学生%d的平均成绩为:%.2f\n", students[i].id, averageScore);
}
// 计算各科成绩的最高分
float maxMathScore = students[0].mathScore;
float maxEnglishScore = students[0].englishScore;
float maxComputerScore = students[0].computerScore;
for (int i = 1; i < numStudents; i++) {
if (students[i].mathScore > maxMathScore) {
maxMathScore = students[i].mathScore;
}
if (students[i].englishScore > maxEnglishScore) {
maxEnglishScore = students[i].englishScore;
}
if (students[i].computerScore > maxComputerScore) {
maxComputerScore = students[i].computerScore;
}
}
printf("数学成绩的最高分为:%.2f\n", maxMathScore);
printf("英语成绩的最高分为:%.2f\n", maxEnglishScore);
printf("计算机成绩的最高分为:%.2f\n", maxComputerScore);
return 0;
}
```
c语言中去掉最高分和最低分
在C语言中去掉最高分和最低分,可以通过以下步骤实现:
1. 首先,定义一个包含所有学生成绩的数组,并为数组中的每个元素赋值。
2. 创建一个变量,用于存储最高分和最低分的索引。
3. 使用循环遍历数组,比较每个元素与当前最高分和最低分的值。
4. 如果找到更高的分数,更新最高分的索引。
5. 如果找到更低的分数,更新最低分的索引。
6. 循环结束后,可以根据最高分和最低分的索引删除对应的数组元素。
7. 最后,再次遍历数组,计算剩余分数的总和和平均值。
下面是一个示例代码:
```c
#include <stdio.h>
#define MAX_SIZE 100
int main() {
int scores[MAX_SIZE];
int num_scores;
int max_index, min_index;
int total_score = 0, average_score;
// 输入学生成绩数量
printf("请输入学生成绩的数量:");
scanf("%d", &num_scores);
// 输入学生成绩
printf("请输入学生成绩:\n");
for (int i = 0; i < num_scores; i++) {
scanf("%d", &scores[i]);
}
// 初始化最高分和最低分的索引为第一个元素
max_index = min_index = 0;
// 找到最高分和最低分的索引
for (int i = 1; i < num_scores; i++) {
if (scores[i] > scores[max_index]) {
max_index = i;
}
if (scores[i] < scores[min_index]) {
min_index = i;
}
}
// 删除最高分和最低分的元素(将其值设为0或其他特殊值)
scores[max_index] = scores[min_index] = 0;
// 计算剩余分数的总和
for (int i = 0; i < num_scores; i++) {
total_score += scores[i];
}
// 计算平均分
average_score = total_score / (num_scores - 2);
// 输出结果
printf("去掉最高分和最低分后的剩余分数总和为:%d\n", total_score);
printf("去掉最高分和最低分后的剩余分数平均值为:%d\n", average_score);
return 0;
}
```
这段代码可以接收输入的学生成绩,去掉最高分和最低分,然后计算剩余分数的总和和平均值,并将结果输出。
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![pptx](https://img-home.csdnimg.cn/images/20210720083543.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)