c语音代码某学生社团要收集新入社成员的成绩信息。每个成员的成绩有两种表示方式:等级制,用best、good、poor三种等级来表示;百分制,直接用分数来表示。输入成员的成绩信息,统计有多少人是用等级来表示成绩的,用分数来表示成绩的成员的平均分是多少(取整就行)。成绩用联合来表示,成绩信息用结构来表示。
时间: 2024-02-12 14:02:55 浏览: 111
好的,下面是相应的C语言代码:
```c
#include <stdio.h>
#include <string.h>
union Score {
char grade[10]; // 等级制成绩
double point; // 百分制成绩
};
struct Member {
union Score score; // 成绩信息
int isGrade; // 是否是等级制成绩
};
int main() {
int n;
printf("请输入成员个数: ");
scanf("%d", &n);
struct Member members[n]; // 定义结构体数组
int gradeCount = 0; // 等级制成绩的人数
double pointSum = 0; // 百分制成绩的总分
for (int i = 0; i < n; i++) {
printf("请输入第 %d 个成员的成绩信息(等级或百分制): ", i + 1);
scanf("%s", members[i].score.grade); // 先输入等级制成绩
if (strcmp(members[i].score.grade, "best") == 0 || strcmp(members[i].score.grade, "good") == 0 || strcmp(members[i].score.grade, "poor") == 0) {
members[i].isGrade = 1; // 如果输入的是等级制成绩,则标记为 1
gradeCount++; // 等级制成绩的人数加 1
}
else {
members[i].isGrade = 0; // 否则标记为 0
pointSum += members[i].score.point; // 百分制成绩的总分累加
}
}
double pointAverage = pointSum / (n - gradeCount); // 百分制成绩的平均分
int pointAverageInt = (int)pointAverage; // 取整
printf("等级制成绩的人数: %d\n", gradeCount);
printf("百分制成绩的平均分: %d\n", pointAverageInt);
return 0;
}
```
C语言中也使用了联合和结构体来表示成员的成绩信息。在输入成员的成绩信息时,先输入等级制成绩,如果输入的是等级制成绩,则标记为 1,否则标记为 0,并累加百分制成绩的总分。最后根据等级制成绩的人数和百分制成绩的总分计算出百分制成绩的平均分,并输出结果。同样需要注意,代码中没有进行输入检查,如果输入的成绩信息不符合要求会导致错误。
阅读全文
相关推荐
![zip](https://img-home.csdnimg.cn/images/20241231045053.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)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231044955.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)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![pptx](https://img-home.csdnimg.cn/images/20241231044947.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)