c语言程序设计,学生记录由学号、姓名和C语言成绩组成,根据班级人数,将学生记录存放在结构体数组中。计算该班学生C语言的平均分和标准差,输出最低分学生记录(可能不止一个学生)。要求:班级人数、学生记录均由键盘输入。
时间: 2024-03-18 16:39:27 浏览: 125
好的,这是一道经典的C语言程序设计题目。下面是参考代码,可以供您参考:
```c
#include <stdio.h>
#include <math.h>
#define MAX_STUDENT 100 // 最大学生数
// 学生记录结构体
typedef struct {
int id; // 学号
char name[20]; // 姓名
double score; // C语言成绩
} student;
int main() {
int n; // 班级人数
student s[MAX_STUDENT]; // 学生记录数组
double sum = 0; // C语言成绩总和
double avg; // C语言成绩平均分
double std_dev; // C语言成绩标准差
double var = 0; // C语言成绩方差
int i, j; // 循环计数器
int min_index[MAX_STUDENT]; // 最低分学生下标数组
int min_count = 0; // 最低分学生数目
// 输入班级人数和学生记录
printf("请输入班级人数:");
scanf("%d", &n);
printf("请依次输入每个学生的学号、姓名和C语言成绩:\n");
for (i = 0; i < n; i++) {
printf("第%d个学生:", i+1);
scanf("%d%s%lf", &s[i].id, s[i].name, &s[i].score);
sum += s[i].score; // 累计成绩总和
}
// 计算平均分
avg = sum / n;
// 计算方差和标准差
for (i = 0; i < n; i++) {
var += pow(s[i].score - avg, 2);
}
var /= n;
std_dev = sqrt(var);
// 查找最低分学生
for (i = 0; i < n; i++) {
if (s[i].score <= s[min_index[0]].score) {
min_index[0] = i;
min_count = 1;
} else if (s[i].score == s[min_index[0]].score) {
min_index[min_count] = i;
min_count++;
}
}
// 输出结果
printf("C语言成绩平均分为:%.2f\n", avg);
printf("C语言成绩标准差为:%.2f\n", std_dev);
printf("最低分学生记录如下:\n");
for (i = 0; i < min_count; i++) {
printf("%d %s %.2f\n", s[min_index[i]].id, s[min_index[i]].name, s[min_index[i]].score);
}
return 0;
}
```
这个程序使用了结构体数组来存储学生记录,依次输入每个学生的学号、姓名和C语言成绩。然后计算平均分、方差、标准差和最低分学生。最后输出计算结果和最低分学生记录。需要注意的是,标准差的计算需要用到数学库中的sqrt函数,因此需要在程序开头加上#include <math.h>。
阅读全文
相关推荐
![-](https://img-home.csdnimg.cn/images/20241231044833.png)
![-](https://img-home.csdnimg.cn/images/20241231044955.png)
![-](https://img-home.csdnimg.cn/images/20241231044930.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)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![-](https://img-home.csdnimg.cn/images/20241231044930.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://img-home.csdnimg.cn/images/20250102104920.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![-](https://img-home.csdnimg.cn/images/20241231044930.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)